Add-AzVmssSecret

Lägger till en hemlighet i en VMSS.

Syntax

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

Description

Cmdleten Add-AzVmssSecret lägger till en hemlighet i VMSS (Virtual Machine Scale Set). Hemligheten måste lagras i ett Azure Key Vault. Mer information om Key Vault finns i Vad är Azure Key Vault? (https://learn.microsoft.com/azure/key-vault/general/basic-concepts). Mer information om cmdletarna finns i Azure Key Vault-cmdletar eller cmdleten Set-AzKeyVaultSecret .

Exempel

Exempel 1: Lägg till en hemlighet i VMSS med hjälp av tillägget för virtuella Azure Key Vault-datorer

# 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

Om du vill installera certifikat på en virtuell dator rekommenderar vi att du använder tillägget för virtuella Azure Key Vault-datorer för Linux eller tillägget för virtuella Azure Key Vault-datorer för Windows.

Exempel 2: Lägg till en hemlighet i VMSS med hjälp av 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

Det här exemplet lägger till en hemlighet i VMSS. Det första kommandot använder cmdleten Get-AzKeyVault för att hämta en valvhemlighet från valvet med namnet ContosoVault och lagrar resultatet i variabeln med namnet $Vault. Det andra kommandot använder cmdleten New-AzVmssVaultCertificateConfig för att skapa en Key Vault-certifikatkonfiguration med den angivna certifikat-URL:en från certifikatarkivet med namnet Certifikat och lagrar resultatet i variabeln med namnet $CertConfig. Det tredje kommandot använder cmdleten New-AzVmssConfig för att skapa ett VMSS-konfigurationsobjekt och lagrar resultatet i variabeln med namnet $VMSS. Det fjärde kommandot lägger till en hemlighet i VMSS med hjälp av valvhemligheten med hjälp av nyckelresurs-ID:t och valvcertifikatet som lagras i variablerna $Vault och $CertConfig.

Parametrar

-Confirm

Uppmanar dig att bekräfta innan du kör cmdleten.

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

-DefaultProfile

Autentiseringsuppgifter, konto, klientorganisation och prenumeration som används för kommunikation med Azure.

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

-SourceVaultId

Anger resurs-ID för nyckelvalvet som innehåller de certifikat som du kan lägga till på den virtuella datorn. Det här värdet fungerar också som nyckel för att lägga till flera certifikat. Det innebär att du kan använda samma värde för parametern SourceVaultId när du lägger till flera certifikat från samma Key Vault.

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

-VaultCertificate

Anger det valvcertifikatobjekt som innehåller certifikat-URL:en och certifikatnamnet. Du kan använda cmdleten New-AzVmssVaultCertificateConfig för att skapa det här objektet.

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

-VirtualMachineScaleSet

Anger VMSS-objektet. Du kan använda cmdleten New-AzVmssConfig för att skapa det här objektet.

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

-WhatIf

Visar vad som skulle hända om cmdleten kördes. Cmdleten körs inte.

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

Indata

PSVirtualMachineScaleSet

String

VaultCertificate[]

Utdata

PSVirtualMachineScaleSet