Freigeben über


Set-AzKeyVaultSecret

Erstellt oder aktualisiert einen Geheimschlüssel in einem Schlüsseltresor.

Syntax

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>]

Beschreibung

Das Cmdlet Set-AzKeyVaultSecret erstellt oder aktualisiert einen geheimen Schlüssel in einem Schlüsseltresor in Azure Key Vault. Wenn das Geheimnis nicht vorhanden ist, wird es von diesem Cmdlet erstellt. Wenn das Geheimnis bereits vorhanden ist, erstellt dieses Cmdlet eine neue Version dieses Geheimnisses.

Beispiele

Beispiel 1: Ändern des Werts eines geheimen Schlüssels mithilfe von Standardattributen

$Secret = ConvertTo-SecureString -String "****" -AsPlainText -Force
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         :

Der erste Befehl konvertiert eine Zeichenfolge mithilfe des Cmdlets ConvertTo-SecureString in eine sichere Zeichenfolge und speichert diese Zeichenfolge dann in der variablen $Secret. Geben Sie Folgendes ein, um weitere Informationen zu erhalten: Get-Help ConvertTo-SecureString. Der zweite Befehl ändert den Wert des geheimen Schlüssels mit dem Namen "ITSecret" im Schlüsseltresor "Contoso". Der geheime Wert wird zum in $Secret gespeicherten Wert.

Beispiel 2: Ändern des Werts eines geheimen Schlüssels mithilfe von benutzerdefinierten Attributen

$Secret = ConvertTo-SecureString -String "****" -AsPlainText -Force
$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

Der erste Befehl konvertiert eine Zeichenfolge mithilfe des Cmdlets ConvertTo-SecureString in eine sichere Zeichenfolge und speichert diese Zeichenfolge dann in der variablen $Secret. Geben Sie Folgendes ein, um weitere Informationen zu erhalten: Get-Help ConvertTo-SecureString. Die nächsten Befehle definieren benutzerdefinierte Attribute für das Ablaufdatum, Tags und Kontexttyp und speichern die Attribute in Variablen. Mit dem letzten Befehl werden die Werte des geheimen Schlüssels "ITSecret" im Schlüsseltresor "Contoso" geändert, indem die zuvor als Variablen angegebenen Werte verwendet werden.

Beispiel 3: Erstellen eines geheimen Schlüssels im Azure Key Vault mithilfe des Befehls "Set-Secret" im Modul "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 "****" -AsPlainText -Force
Set-Secret -Name secureSecret -SecureStringSecret $secure -Vault AzKeyVault

None

In diesem Beispiel wird ein geheimer Schlüssel secureSecret im Azure Key Vault test-kv anhand des Befehls Set-Secret im Modul Microsoft.PowerShell.SecretManagementfestgelegt.

Parameter

-Confirm

Hiermit werden Sie vor der Ausführung des Cmdlets zur Bestätigung aufgefordert.

Typ:SwitchParameter
Aliase:cf
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-ContentType

Gibt den Inhaltstyp eines geheimen Schlüssels an. Um den vorhandenen Inhaltstyp zu löschen, geben Sie eine leere Zeichenfolge an.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-DefaultProfile

Anmeldeinformationen, Konto, Mandant und Abonnement für die Kommunikation mit Azure

Typ:IAzureContextContainer
Aliase:AzContext, AzureRmContext, AzureCredential
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Disable

Gibt an, dass dieses Cmdlet einen geheimen Schlüssel deaktiviert.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Expires

Gibt die Ablaufzeit als DateTime-Objekt für den geheimen Schlüssel an, den dieses Cmdlet aktualisiert. Dieser Parameter verwendet koordinierte Weltzeit (COORDINATED Universal Time, UTC). Verwenden Sie zum Abrufen eines DateTime-Objekts das Cmdlet "Get-Date ". Geben Sie Folgendes ein, um weitere Informationen zu erhalten: Get-Help Get-Date.

Typ:Nullable<T>[DateTime]
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-InputObject

Secret-Objekt

Typ:PSKeyVaultSecretIdentityItem
Position:0
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-Name

Gibt den Namen eines geheimen Schlüssels an, der geändert werden soll. Dieses Cmdlet erstellt den vollqualifizierten Domänennamen (Fully Qualified Domain Name, FQDN) eines geheimen Schlüssels basierend auf dem Namen, den dieser Parameter angibt, den Namen des Schlüsseltresors und Die aktuelle Umgebung.

Typ:String
Aliase:SecretName
Position:1
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-NotBefore

Gibt die Uhrzeit als DateTime-Objekt an, vor dem der geheime Schlüssel nicht verwendet werden kann. Dieser Parameter verwendet UTC. Verwenden Sie zum Abrufen eines DateTime-Objekts das Cmdlet "Get-Date ".

Typ:Nullable<T>[DateTime]
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-SecretValue

Gibt den Wert für den geheimen Schlüssel als SecureString-Objekt an. Verwenden Sie das Cmdlet ConvertTo-SecureString, um ein SecureString-Objekt abzurufen. Geben Sie Folgendes ein, um weitere Informationen zu erhalten: Get-Help ConvertTo-SecureString.

Typ:SecureString
Position:2
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Tag

Schlüssel-Wert-Paare in Form einer Hashtabelle. Beispiel: @{key0="value0"; key1=$null; key2="value2"}

Typ:Hashtable
Aliase:Tags
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-VaultName

Gibt den Namen des Schlüsseltresors an, zu dem dieser geheime Schlüssel gehört. Dieses Cmdlet erstellt den FQDN eines Schlüsseltresors basierend auf dem Namen, den dieser Parameter angibt, und Die aktuelle Umgebung.

Typ:String
Position:0
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-WhatIf

Zeigt, was geschieht, wenn das Cmdlet ausgeführt wird. Das Cmdlet wird nicht ausgeführt.

Typ:SwitchParameter
Aliase:wi
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

Eingaben

PSKeyVaultSecretIdentityItem

Ausgaben

PSKeyVaultSecret