Partilhar via


Add-AzVmssSecret

Adiciona um segredo a um VMSS.

Sintaxe

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

Description

O cmdlet Add-AzVmssSecret adiciona um segredo ao VMSS (Virtual Machine Scale set). O segredo deve ser armazenado em um Cofre de Chaves do Azure. Para obter mais informações relacionadas ao Cofre da Chave, consulte O que é o Cofre da Chave do Azure? (https://learn.microsoft.com/azure/key-vault/general/basic-concepts). Para obter mais informações sobre os cmdlets, consulte cmdlets do Azure Key Vault ou o cmdlet Set-AzKeyVaultSecret.

Exemplos

Exemplo 1: Adicionar um segredo ao VMSS usando a extensão de máquina virtual do Azure Key Vault

# 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

Para instalar certificados em uma máquina virtual, é recomendável usar a extensão de máquina virtual do Azure Key Vault para Linux ou a extensão de máquina virtual do Azure Key Vault para Windows.

Exemplo 2: Adicionar um segredo ao VMSS usando 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

Este exemplo adiciona um segredo ao VMSS. O primeiro comando usa o cmdlet Get-AzKeyVault para obter um segredo do cofre chamado ContosoVault e armazena o resultado na variável chamada $Vault. O segundo comando usa o cmdlet New-AzVmssVaultCertificateConfig para criar uma configuração de certificado do Cofre da Chave usando a URL de certificado especificada do repositório de certificados chamado Certificados e armazena os resultados na variável chamada $CertConfig. O terceiro comando usa o cmdlet New-AzVmssConfig para criar um objeto de configuração do VMSS e armazena o resultado na variável chamada $VMSS. O quarto comando adiciona um segredo ao VMSS usando o segredo do vault usando o ID do recurso de chave e o certificado do vault armazenado nas variáveis $Vault e $CertConfig.

Parâmetros

-Confirm

Solicita confirmação antes de executar o cmdlet.

Tipo:SwitchParameter
Aliases:cf
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-DefaultProfile

As credenciais, a conta, o locatário e a assinatura usados para comunicação com o azure.

Tipo:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-SourceVaultId

Especifica a ID do recurso do Cofre da Chave que contém os certificados que você pode adicionar à máquina virtual. Esse valor também atua como a chave para adicionar vários certificados. Isso significa que você pode usar o mesmo valor para o parâmetro SourceVaultId ao adicionar vários certificados do mesmo Cofre de Chaves.

Tipo:String
Position:1
Default value:None
Necessário:False
Aceitar entrada de pipeline:True
Aceitar carateres universais:False

-VaultCertificate

Especifica o objeto Vault Certificate que contém a URL e o nome do certificado. Você pode usar o cmdlet New-AzVmssVaultCertificateConfig para criar esse objeto.

Tipo:VaultCertificate[]
Position:2
Default value:None
Necessário:False
Aceitar entrada de pipeline:True
Aceitar carateres universais:False

-VirtualMachineScaleSet

Especifica o objeto VMSS. Você pode usar o cmdlet New-AzVmssConfig para criar esse objeto.

Tipo:PSVirtualMachineScaleSet
Position:0
Default value:None
Necessário:True
Aceitar entrada de pipeline:True
Aceitar carateres universais:False

-WhatIf

Mostra o que aconteceria se o cmdlet fosse executado. O cmdlet não é executado.

Tipo:SwitchParameter
Aliases:wi
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

Entradas

PSVirtualMachineScaleSet

String

VaultCertificate[]

Saídas

PSVirtualMachineScaleSet