Compartir a través de


Add-AzVmssSecret

Agrega un secreto a un VMSS.

Sintaxis

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

Description

El cmdlet Add-AzVmssSecret agrega un secreto al conjunto de escalado de máquinas virtuales (VMSS). El secreto debe almacenarse en una instancia de Azure Key Vault. Para más información sobre Key Vault, consulte ¿Qué es Azure Key Vault? (https://learn.microsoft.com/azure/key-vault/general/basic-concepts). Para más información sobre los cmdlets, consulte Cmdlets de Azure Key Vault o el cmdlet Set-AzKeyVaultSecret .

Ejemplos

Ejemplo 1: Adición de un secreto a VMSS mediante la extensión de máquina virtual de 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 en una máquina virtual, se recomienda usar la extensión de máquina virtual de Azure Key Vault para Linux o la extensión de máquina virtual de Azure Key Vault para Windows.

Ejemplo 2: Adición de un secreto a VMSS mediante 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

En este ejemplo se agrega un secreto a VMSS. El primer comando usa el cmdlet Get-AzKeyVault para obtener un secreto de almacén del almacén denominado ContosoVault y almacena el resultado en la variable denominada $Vault. El segundo comando usa el cmdlet New-AzVmssVaultCertificateConfig para crear una configuración de certificado de Key Vault mediante la dirección URL de certificado especificada del almacén de certificados denominado Certificates y almacena los resultados en la variable denominada $CertConfig. El tercer comando usa el cmdlet New-AzVmssConfig para crear un objeto de configuración de VMSS y almacena el resultado en la variable denominada $VMSS. El cuarto comando agrega un secreto a VMSS mediante el secreto del almacén mediante el identificador de recurso de clave y el certificado del almacén almacenados en las variables de $Vault y $CertConfig.

Parámetros

-Confirm

Le solicita su confirmación antes de ejecutar el cmdlet.

Tipo:SwitchParameter
Alias:cf
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-DefaultProfile

Las credenciales, la cuenta, el inquilino y la suscripción que se usan para la comunicación con Azure.

Tipo:IAzureContextContainer
Alias:AzContext, AzureRmContext, AzureCredential
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-SourceVaultId

Especifica el identificador de recurso del almacén de claves que contiene los certificados que puede agregar a la máquina virtual. Este valor también actúa como clave para agregar varios certificados. Esto significa que puede usar el mismo valor para el parámetro SourceVaultId al agregar varios certificados desde el mismo almacén de claves.

Tipo:String
Posición:1
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:True
Aceptar caracteres comodín:False

-VaultCertificate

Especifica el objeto Vault Certificate que contiene la dirección URL del certificado y el nombre del certificado. Puede usar el cmdlet New-AzVmssVaultCertificateConfig para crear este objeto.

Tipo:VaultCertificate[]
Posición:2
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:True
Aceptar caracteres comodín:False

-VirtualMachineScaleSet

Especifica el objeto VMSS. Puede usar el cmdlet New-AzVmssConfig para crear este objeto.

Tipo:PSVirtualMachineScaleSet
Posición:0
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:True
Aceptar caracteres comodín:False

-WhatIf

Muestra lo que sucedería si se ejecutara el cmdlet. El cmdlet no se ejecuta.

Tipo:SwitchParameter
Alias:wi
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

Entradas

PSVirtualMachineScaleSet

String

VaultCertificate[]

Salidas

PSVirtualMachineScaleSet