Udostępnij za pośrednictwem


Add-AzVmssSecret

Dodaje wpis tajny do zestawu skalowania maszyn wirtualnych.

Składnia

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

Opis

Polecenie cmdlet Add-AzVmssSecret dodaje wpis tajny do zestawu skalowania maszyn wirtualnych (VMSS). Wpis tajny musi być przechowywany w usłudze Azure Key Vault. Aby uzyskać więcej informacji dotyczących usługi Key Vault, zobacz Co to jest usługa Azure Key Vault? (https://learn.microsoft.com/azure/key-vault/general/basic-concepts). Aby uzyskać więcej informacji na temat poleceń cmdlet, zobacz Polecenia cmdlet usługi Azure Key Vault lub polecenie cmdlet Set-AzKeyVaultSecret .

Przykłady

Przykład 1. Dodawanie wpisu tajnego do zestawu skalowania maszyn wirtualnych przy użyciu rozszerzenia maszyny wirtualnej usługi 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

Aby zainstalować certyfikaty na maszynie wirtualnej, zaleca się użycie rozszerzenia maszyny wirtualnej usługi Azure Key Vault dla systemu Linux lub rozszerzenia maszyny wirtualnej usługi Azure Key Vault dla systemu Windows.

Przykład 2. Dodawanie wpisu tajnego do zestawu skalowania maszyn wirtualnych przy użyciu polecenia 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

W tym przykładzie dodano wpis tajny do zestawu skalowania maszyn wirtualnych. Pierwsze polecenie używa polecenia cmdlet Get-AzKeyVault, aby uzyskać wpis tajny magazynu z magazynu o nazwie ContosoVault i zapisuje wynik w zmiennej o nazwie $Vault. Drugie polecenie używa polecenia cmdlet New-AzVmssVaultCertificateConfig do utworzenia konfiguracji certyfikatu usługi Key Vault przy użyciu określonego adresu URL certyfikatu z magazynu certyfikatów o nazwie Certificates i przechowuje wyniki w zmiennej o nazwie $CertConfig. Trzecie polecenie używa polecenia cmdlet New-AzVmssConfig do utworzenia obiektu konfiguracji zestawu skalowania maszyn wirtualnych i zapisuje wynik w zmiennej o nazwie $VMSS. Czwarte polecenie dodaje wpis tajny do zestawu skalowania maszyn wirtualnych przy użyciu wpisu tajnego magazynu przy użyciu identyfikatora zasobu klucza i certyfikatu magazynu przechowywanego w zmiennych $Vault i $CertConfig.

Parametry

-Confirm

Monituje o potwierdzenie przed uruchomieniem polecenia cmdlet.

Typ:SwitchParameter
Aliasy:cf
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-DefaultProfile

Poświadczenia, konto, dzierżawa i subskrypcja używane do komunikacji z platformą Azure.

Typ:IAzureContextContainer
Aliasy:AzContext, AzureRmContext, AzureCredential
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-SourceVaultId

Określa identyfikator zasobu usługi Key Vault, który zawiera certyfikaty, które można dodać do maszyny wirtualnej. Ta wartość działa również jako klucz do dodawania wielu certyfikatów. Oznacza to, że podczas dodawania wielu certyfikatów z tej samej usługi Key Vault można użyć tej samej wartości dla parametru SourceVaultId .

Typ:String
Position:1
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-VaultCertificate

Określa obiekt certyfikatu magazynu zawierający adres URL certyfikatu i nazwę certyfikatu. Aby utworzyć ten obiekt, możesz użyć polecenia cmdlet New-AzVmssVaultCertificateConfig .

Typ:VaultCertificate[]
Position:2
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-VirtualMachineScaleSet

Określa obiekt VMSS. Aby utworzyć ten obiekt, możesz użyć polecenia cmdlet New-AzVmssConfig .

Typ:PSVirtualMachineScaleSet
Position:0
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-WhatIf

Pokazuje, co się stanie po uruchomieniu polecenia cmdlet. Polecenie cmdlet nie zostało uruchomione.

Typ:SwitchParameter
Aliasy:wi
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

Dane wejściowe

PSVirtualMachineScaleSet

String

VaultCertificate[]

Dane wyjściowe

PSVirtualMachineScaleSet