Set-AzKeyVaultSecret
Tworzy lub aktualizuje wpis tajny w magazynie kluczy.
Składnia
Set-AzKeyVaultSecret
[-VaultName] <String>
[-Name] <String>
[-SecretValue] <SecureString>
[-Disable]
[-Expires <DateTime>]
[-NotBefore <DateTime>]
[-ContentType <String>]
[-Tag <Hashtable>]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-AzKeyVaultSecret
[-InputObject] <PSKeyVaultSecretIdentityItem>
[-SecretValue] <SecureString>
[-Disable]
[-Expires <DateTime>]
[-NotBefore <DateTime>]
[-ContentType <String>]
[-Tag <Hashtable>]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Opis
Polecenie cmdlet Set-AzKeyVaultSecret tworzy lub aktualizuje wpis tajny w magazynie kluczy w usłudze Azure Key Vault. Jeśli wpis tajny nie istnieje, to polecenie cmdlet go utworzy. Jeśli wpis tajny już istnieje, to polecenie cmdlet tworzy nową wersję tego wpisu tajnego.
Przykłady
Przykład 1. Modyfikowanie wartości wpisu tajnego przy użyciu atrybutów domyślnych
$Secret = Read-Host -Prompt 'Enter a Password' -AsSecureString
Set-AzKeyVaultSecret -VaultName 'Contoso' -Name 'ITSecret' -SecretValue $Secret
Vault Name : Contoso
Name : ITSecret
Version : 8b5c0cb0326e4350bd78200fac932b51
Id : https://contoso.vault.azure.net:443/secrets/ITSecret/8b5c0cb0326e4350bd78200fac932b51
Enabled : True
Expires :
Not Before :
Created : 5/25/2018 6:39:30 PM
Updated : 5/25/2018 6:39:30 PM
Content Type :
Tags :
Pierwsze polecenie konwertuje ciąg na bezpieczny ciąg przy użyciu polecenia cmdlet ConvertTo-SecureString , a następnie przechowuje ten ciąg w zmiennej $Secret. Aby uzyskać więcej informacji, wpisz Get-Help ConvertTo-SecureString
.
Drugie polecenie modyfikuje wartość wpisu tajnego o nazwie ITSecret w magazynie kluczy o nazwie Contoso. Wartość wpisu tajnego staje się wartością przechowywaną w $Secret.
Przykład 2. Modyfikowanie wartości wpisu tajnego przy użyciu atrybutów niestandardowych
$Secret = Read-Host -Prompt 'Enter a Password' -AsSecureString
$Expires = (Get-Date).AddYears(2).ToUniversalTime()
$NBF =(Get-Date).ToUniversalTime()
$Tags = @{ 'Severity' = 'medium'; 'IT' = 'true'}
$ContentType = 'txt'
Set-AzKeyVaultSecret -VaultName 'Contoso' -Name 'ITSecret' -SecretValue $Secret -Expires $Expires -NotBefore $NBF -ContentType $ContentType -Disable -Tags $Tags
Vault Name : Contoso
Name : ITSecret
Version : a2c150be3ea24dd6b8286986e6364851
Id : https://contoso.vault.azure.net:443/secrets/ITSecret/a2c150be3ea24dd6b8286986e6364851
Enabled : False
Expires : 5/25/2020 6:40:00 PM
Not Before : 5/25/2018 6:40:05 PM
Created : 5/25/2018 6:41:22 PM
Updated : 5/25/2018 6:41:22 PM
Content Type : txt
Tags : Name Value
Severity medium
IT true
Pierwsze polecenie konwertuje ciąg na bezpieczny ciąg przy użyciu polecenia cmdlet ConvertTo-SecureString , a następnie przechowuje ten ciąg w zmiennej $Secret. Aby uzyskać więcej informacji, wpisz Get-Help ConvertTo-SecureString
.
Następne polecenia definiują atrybuty niestandardowe dla daty wygaśnięcia, tagów i typu kontekstu oraz przechowują atrybuty w zmiennych.
Końcowe polecenie modyfikuje wartości wpisu tajnego o nazwie ITSecret w magazynie kluczy o nazwie Contoso, używając wartości określonych wcześniej jako zmiennych.
Przykład 3. Tworzenie wpisu tajnego w usłudze Azure Key Vault za pomocą polecenia Set-Secret w module Microsoft.PowerShell.SecretManagement
# Install module Microsoft.PowerShell.SecretManagement
Install-Module Microsoft.PowerShell.SecretManagement -Repository PSGallery -AllowPrerelease
# Register vault for Secret Management
Register-SecretVault -Name AzKeyVault -ModuleName Az.KeyVault -VaultParameters @{ AZKVaultName = 'test-kv'; SubscriptionId = 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx' }
# Set secret for vault AzKeyVault
$secure = ConvertTo-SecureString -String "Password" -AsPlainText -Force
Set-Secret -Name secureSecret -SecureStringSecret $secure -Vault AzKeyVault
None
W tym przykładzie ustawiono wpis tajny o nazwie secureSecret
w usłudze Azure Key Vault test-kv
za pomocą polecenia Set-Secret
w module Microsoft.PowerShell.SecretManagement
.
Parametry
-Confirm
Monituje o potwierdzenie przed uruchomieniem polecenia cmdlet.
Typ: | SwitchParameter |
Aliases: | cf |
Position: | Named |
wartość domyślna: | None |
Wymagane: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ContentType
Określa typ zawartości wpisu tajnego. Aby usunąć istniejący typ zawartości, określ pusty ciąg.
Typ: | String |
Position: | Named |
wartość domyślna: | None |
Wymagane: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DefaultProfile
Poświadczenia, konto, dzierżawa i subskrypcja używane do komunikacji z platformą Azure
Typ: | IAzureContextContainer |
Aliases: | AzContext, AzureRmContext, AzureCredential |
Position: | Named |
wartość domyślna: | None |
Wymagane: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Disable
Wskazuje, że to polecenie cmdlet wyłącza wpis tajny.
Typ: | SwitchParameter |
Position: | Named |
wartość domyślna: | None |
Wymagane: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Expires
Określa czas wygaśnięcia jako obiekt DateTime dla wpisu tajnego, który aktualizuje to polecenie cmdlet.
Ten parametr używa uniwersalnego czasu koordynowanego (UTC). Aby uzyskać obiekt DateTime , użyj polecenia cmdlet Get-Date . Aby uzyskać więcej informacji, wpisz Get-Help Get-Date
.
Typ: | Nullable<T>[DateTime] |
Position: | Named |
wartość domyślna: | None |
Wymagane: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-InputObject
Obiekt wpisu tajnego
Typ: | PSKeyVaultSecretIdentityItem |
Position: | 0 |
wartość domyślna: | None |
Wymagane: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Name
Określa nazwę wpisu tajnego do zmodyfikowania. To polecenie cmdlet konstruuje w pełni kwalifikowaną nazwę domeny (FQDN) wpisu tajnego na podstawie nazwy określonej przez ten parametr, nazwy magazynu kluczy i bieżącego środowiska.
Typ: | String |
Aliases: | SecretName |
Position: | 1 |
wartość domyślna: | None |
Wymagane: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-NotBefore
Określa godzinę, jako obiekt DateTime , przed którym nie można użyć wpisu tajnego. Ten parametr używa czasu UTC. Aby uzyskać obiekt DateTime , użyj polecenia cmdlet Get-Date .
Typ: | Nullable<T>[DateTime] |
Position: | Named |
wartość domyślna: | None |
Wymagane: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SecretValue
Określa wartość wpisu tajnego jako obiekt SecureString . Aby uzyskać obiekt SecureString , użyj polecenia cmdlet ConvertTo-SecureString . Aby uzyskać więcej informacji, wpisz Get-Help ConvertTo-SecureString
.
Typ: | SecureString |
Position: | 2 |
wartość domyślna: | None |
Wymagane: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Tag
Pary klucz-wartość w postaci tabeli skrótów. Na przykład: @{key0="value0"; key1=$null; key2="value2"}
Typ: | Hashtable |
Aliases: | Tags |
Position: | Named |
wartość domyślna: | None |
Wymagane: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-VaultName
Określa nazwę magazynu kluczy, do którego należy ten wpis tajny. To polecenie cmdlet konstruuje nazwę FQDN magazynu kluczy na podstawie nazwy określonej przez ten parametr i bieżącego środowiska.
Typ: | String |
Position: | 0 |
wartość domyślna: | None |
Wymagane: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
Pokazuje, co się stanie po uruchomieniu polecenia cmdlet. Polecenie cmdlet nie zostało uruchomione.
Typ: | SwitchParameter |
Aliases: | wi |
Position: | Named |
wartość domyślna: | None |
Wymagane: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |