зеркало из https://github.com/Azure/vdc.git
analysis.services.akv.secrects script added
This commit is contained in:
Родитель
bb280743be
Коммит
b6d3549ebe
|
@ -0,0 +1,136 @@
|
||||||
|
<#
|
||||||
|
.NOTES
|
||||||
|
==============================================================================================
|
||||||
|
Copyright(c) Microsoft Corporation. All rights reserved.
|
||||||
|
|
||||||
|
Microsoft Consulting Services - AzureCAT - VDC Toolkit (v2.0)
|
||||||
|
|
||||||
|
File: analysis.services.akv.secrects.ps1
|
||||||
|
|
||||||
|
Purpose: Set Analysis Services Secrets Automation Script
|
||||||
|
|
||||||
|
Version: 2.0.0.0 - 1st August 2019 - Azure Virtual Datacenter Development Team
|
||||||
|
==============================================================================================
|
||||||
|
|
||||||
|
.SYNOPSIS
|
||||||
|
Set Analysis Services Key Vault Secrets Automation Script
|
||||||
|
|
||||||
|
.DESCRIPTION
|
||||||
|
Set Analysis Services Key Vault Secrets Automation Script
|
||||||
|
|
||||||
|
Deployment steps of the script are outlined below.
|
||||||
|
1) Set Azure KeyVault Parameters
|
||||||
|
2) Set Analysis Services Parameters
|
||||||
|
3) Create Azure KeyVault Secret
|
||||||
|
|
||||||
|
.PARAMETER keyVaultName
|
||||||
|
Specify the Azure KeyVault Name parameter.
|
||||||
|
|
||||||
|
.PARAMETER analysisServicesName
|
||||||
|
Specify the Analysis Services Name output parameter.
|
||||||
|
|
||||||
|
.PARAMETER analysisServicesResourceId
|
||||||
|
Specify the Analysis Services ResourceId output parameter.
|
||||||
|
|
||||||
|
.PARAMETER analysisServicesResourceGroup
|
||||||
|
Specify the Analysis Services ResourceGroup output parameter.
|
||||||
|
|
||||||
|
.EXAMPLE
|
||||||
|
Default:
|
||||||
|
C:\PS>.\analysis.services.akv.secrects.ps1
|
||||||
|
-keyVaultName "$(keyVaultName)"
|
||||||
|
-analysisServicesName "$(analysisServicesName)"
|
||||||
|
-analysisServicesResourceId "$(analysisServicesResourceId)"
|
||||||
|
-analysisServicesResourceGroup "$(analysisServicesResourceGroup)"
|
||||||
|
#>
|
||||||
|
|
||||||
|
#Requires -Version 5
|
||||||
|
#Requires -Module Az.KeyVault
|
||||||
|
|
||||||
|
[CmdletBinding()]
|
||||||
|
param
|
||||||
|
(
|
||||||
|
[Parameter(Mandatory = $false)]
|
||||||
|
[string]$keyVaultName,
|
||||||
|
|
||||||
|
[Parameter(Mandatory = $false)]
|
||||||
|
[string]$analysisServicesName,
|
||||||
|
|
||||||
|
[Parameter(Mandatory = $false)]
|
||||||
|
[string]$analysisServicesResourceId,
|
||||||
|
|
||||||
|
[Parameter(Mandatory = $false)]
|
||||||
|
[string]$analysisServicesResourceGroup
|
||||||
|
)
|
||||||
|
|
||||||
|
#region - Key Vault Parameters
|
||||||
|
if (-not [string]::IsNullOrWhiteSpace($PSBoundParameters['keyVaultName']))
|
||||||
|
{
|
||||||
|
Write-Output "KeyVault Name: $keyVaultName"
|
||||||
|
$kVSecretParameters = @{ }
|
||||||
|
|
||||||
|
#region - Analysis Services Parameters
|
||||||
|
if (-not [string]::IsNullOrWhiteSpace($PSBoundParameters['analysisServicesName']))
|
||||||
|
{
|
||||||
|
Write-Output "Analysis Services Name : $analysisServicesName"
|
||||||
|
$kVSecretParameters.Add("AnalysisServices--Name", $($analysisServicesName))
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
Write-Output "Analysis Services Name: []"
|
||||||
|
}
|
||||||
|
|
||||||
|
if (-not [string]::IsNullOrWhiteSpace($PSBoundParameters['analysisServicesResourceId']))
|
||||||
|
{
|
||||||
|
Write-Output "AnalysisServices ResourceId : $analysisServicesResourceId"
|
||||||
|
$kVSecretParameters.Add("AnalysisServices--ResourceId", $($analysisServicesResourceId))
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
Write-Output "Analysis Services ResourceId: []"
|
||||||
|
}
|
||||||
|
|
||||||
|
if (-not [string]::IsNullOrWhiteSpace($PSBoundParameters['analysisServicesResourceGroup']))
|
||||||
|
{
|
||||||
|
Write-Output "Analysis Services ResourceGroup : $analysisServicesResourceGroup"
|
||||||
|
$kVSecretParameters.Add("AnalysisServices--ResourceGroup", $($analysisServicesResourceGroup))
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
Write-Output "Analysis Services ResourceGroup: []"
|
||||||
|
}
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
#region - Set Azure KeyVault Secret
|
||||||
|
$kVSecretParameters.Keys | ForEach-Object {
|
||||||
|
$key = $psitem
|
||||||
|
$value = $kVSecretParameters.Item($psitem)
|
||||||
|
|
||||||
|
if (-not [string]::IsNullOrWhiteSpace($value))
|
||||||
|
{
|
||||||
|
Write-Output "KeyVault Secret: $key : $value"
|
||||||
|
|
||||||
|
$value = $kVSecretParameters.Item($psitem)
|
||||||
|
|
||||||
|
Write-Output "Setting Secret for $key"
|
||||||
|
$paramSetAzKeyVaultSecret = @{
|
||||||
|
VaultName = $keyVaultName
|
||||||
|
Name = $key
|
||||||
|
SecretValue = (ConvertTo-SecureString $value -AsPlainText -Force)
|
||||||
|
Verbose = $true
|
||||||
|
ErrorAction = 'SilentlyContinue'
|
||||||
|
}
|
||||||
|
Set-AzKeyVaultSecret @paramSetAzKeyVaultSecret
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
Write-Output "KeyVault Secret: []"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endregion
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
Write-Output "KeyVault Name: []"
|
||||||
|
}
|
||||||
|
#endregion
|
Загрузка…
Ссылка в новой задаче