Add-AzVmssSecret

Hiermee voegt u een geheim toe aan een VMSS.

Syntax

Add-AzVmssSecret
   [-VirtualMachineScaleSet] <PSVirtualMachineScaleSet>
   [[-SourceVaultId] <String>]
   [[-VaultCertificate] <VaultCertificate[]>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Description

De cmdlet Add-AzVmssSecret voegt een geheim toe aan de Virtuele-machineschaalset (VMSS). Het geheim moet worden opgeslagen in een Azure Key Vault. Zie Wat is Azure Key Vault? (https://learn.microsoft.com/azure/key-vault/general/basic-concepts) voor meer informatie over Key Vault. Zie Azure Key Vault-cmdlets of de set-AzKeyVaultSecret-cmdlet voor meer informatie over de cmdlets.

Voorbeelden

Voorbeeld 1: Een geheim toevoegen aan de VMSS met behulp van de azure Key Vault-extensie voor virtuele machines

# Build settings
$settings = @{
    secretsManagementSettings = @{
        pollingIntervalInS       = "<pollingInterval>"
        certificateStoreName     = "<certStoreName>"
        certificateStoreLocation = "<certStoreLoc>"
        observedCertificates     = @("<observedCert1>", "<observedCert2>")
    } 
} | ConvertTo-Json
$extName = "KeyVaultForLinux"
$extPublisher = "Microsoft.Azure.KeyVault"
$extType = "KeyVaultForLinux"
# Add Extension to VMSS
$vmss = Get-AzVmss -ResourceGroupName <ResourceGroupName> -VMScaleSetName <VmssName>
Add-AzVmssExtension -VirtualMachineScaleSet $vmss  -Name $extName -Publisher $extPublisher -Type $extType -TypeHandlerVersion "2.0" -Setting $settings
# Start the deployment
Update-AzVmss -ResourceGroupName <ResourceGroupName> -VMScaleSetName <VmssName> -VirtualMachineScaleSet $vmss

Als u certificaten op een virtuele machine wilt installeren, wordt u aangeraden de azure Key Vault-extensie voor virtuele machines te gebruiken voor Linux of de azure Key Vault-extensie voor virtuele machines voor Windows.

Voorbeeld 2: Een geheim toevoegen aan de VMSS met behulp van Add-AzVmssSecret

$Vault = Get-AzKeyVault -VaultName "ContosoVault"
$CertConfig = New-AzVmssVaultCertificateConfig -CertificateUrl "http://keyVaultName.vault.contoso.net/secrets/secretName/secretVersion" -CertificateStore "Certificates"
$VMSS = New-AzVmssConfig
Add-AzVmssSecret -VirtualMachineScaleSet $VMSS -SourceVaultId $Vault.ResourceId -VaultCertificate $CertConfig

In dit voorbeeld wordt een geheim toegevoegd aan de VMSS. De eerste opdracht maakt gebruik van de Cmdlet Get-AzKeyVault om een kluisgeheim op te halen uit de kluis met de naam ContosoVault en slaat het resultaat op in de variabele met de naam $Vault. De tweede opdracht maakt gebruik van de cmdlet New-AzVmssVaultCertificateConfig om een Key Vault-certificaatconfiguratie te maken met behulp van de opgegeven certificaat-URL van het certificaatarchief met de naam Certificaten en slaat de resultaten op in de variabele met de naam $CertConfig. De derde opdracht maakt gebruik van de cmdlet New-AzVmssConfig om een VMSS-configuratieobject te maken en slaat het resultaat op in de variabele met de naam $VMSS. Met de vierde opdracht wordt een geheim aan de VMSS toegevoegd met behulp van het kluisgeheim met behulp van de sleutelresource-id en het kluiscertificaat dat is opgeslagen in de $Vault en $CertConfig variabelen.

Parameters

-Confirm

Hiermee wordt u gevraagd om bevestiging voordat u de cmdlet uitvoert.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DefaultProfile

De referenties, het account, de tenant en het abonnement die worden gebruikt voor communicatie met Azure.

Type:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SourceVaultId

Hiermee geeft u de resource-id op van de Sleutelkluis die de certificaten bevat die u aan de virtuele machine kunt toevoegen. Deze waarde fungeert ook als de sleutel voor het toevoegen van meerdere certificaten. Dit betekent dat u dezelfde waarde kunt gebruiken voor de parameter SourceVaultId wanneer u meerdere certificaten uit dezelfde sleutelkluis toevoegt.

Type:String
Position:1
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-VaultCertificate

Hiermee geeft u het kluiscertificaatobject dat de certificaat-URL en certificaatnaam bevat. U kunt de cmdlet New-AzVmssVaultCertificateConfig gebruiken om dit object te maken.

Type:VaultCertificate[]
Position:2
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-VirtualMachineScaleSet

Hiermee geeft u het VMSS-object. U kunt de cmdlet New-AzVmssConfig gebruiken om dit object te maken.

Type:PSVirtualMachineScaleSet
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-WhatIf

Hiermee wordt weergegeven wat er zou gebeuren als u de cmdlet uitvoert. De cmdlet wordt niet uitgevoerd.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Invoerwaarden

PSVirtualMachineScaleSet

String

VaultCertificate[]

Uitvoerwaarden

PSVirtualMachineScaleSet