Compartilhar via


Set-AzKeyVaultSecret

Cria ou atualiza um segredo em um cofre de chaves.

Sintaxe

Set-AzKeyVaultSecret
   [-VaultName] <String>
   [-Name] <String>
   [-SecretValue] <SecureString>
   [-Disable]
   [-Expires <DateTime>]
   [-NotBefore <DateTime>]
   [-ContentType <String>]
   [-Tag <Hashtable>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-AzKeyVaultSecret
   [-Id] <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>]

Description

O cmdlet Set-AzKeyVaultSecret cria ou atualiza um segredo em um cofre de chaves no Azure Key Vault. Se o segredo não existir, esse cmdlet o criará. Se o segredo já existir, esse cmdlet criará uma nova versão desse segredo.

Exemplos

Exemplo 1: modificar o valor de um segredo usando atributos padrão

$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         :

O primeiro comando converte uma cadeia de caracteres em uma cadeia de caracteres segura usando o cmdlet ConvertTo-SecureString e armazena essa cadeia de caracteres na variável $Secret. Para obter mais informações, digite Get-Help ConvertTo-SecureString. O segundo comando modifica o valor do segredo chamado ITSecret no cofre de chaves chamado Contoso. O valor do segredo torna-se o valor armazenado em $Secret.

Exemplo 2: modificar o valor de um segredo usando atributos personalizados

$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

O primeiro comando converte uma cadeia de caracteres em uma cadeia de caracteres segura usando o cmdlet ConvertTo-SecureString e armazena essa cadeia de caracteres na variável $Secret. Para obter mais informações, digite Get-Help ConvertTo-SecureString. Os comandos a seguir definem atributos personalizados para a data de expiração, marcas e tipo de contexto e armazenam os atributos em variáveis. O comando final modifica os valores do segredo chamado ITSecret no cofre de chaves chamado Contoso, usando os valores especificados anteriormente como variáveis.

Exemplo 3: modificar o valor de um segredo usando atributos padrão (usando Uri)

$Secret = ConvertTo-SecureString -String "****" -AsPlainText -Force
Set-AzKeyVaultSecret -Id 'https://contoso.vault.azure.net/secrets/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         :

Esse comando define ou atualiza o valor do segredo chamado secret1 no Key Vault chamado Contoso usando o URI do segredo.

Exemplo 4: Criar um segredo no cofre de chaves do Azure por comando Set-Secret no módulo 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

Este exemplo define um segredo chamado secureSecret no cofre de chaves do Azure test-kv por Set-Secret de comando no módulo Microsoft.PowerShell.SecretManagement.

Parâmetros

-Confirm

Solicita a confirmação antes de executar o cmdlet.

Tipo:SwitchParameter
Aliases:cf
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-ContentType

Especifica o tipo de conteúdo de um segredo. Para excluir o tipo de conteúdo existente, especifique uma cadeia de caracteres vazia.

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga: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
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-Disable

Indica que esse cmdlet desabilita um segredo.

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-Expires

Especifica a hora de expiração, como um objeto DateTime, para o segredo que esse cmdlet atualiza. Esse parâmetro usa UTC (Tempo Universal Coordenado). Para obter um objeto DateTime, use o cmdlet Get-Date. Para obter mais informações, digite Get-Help Get-Date.

Tipo:DateTime
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-Id

O URI do segredo KeyVault. Verifique se ele segue o formato: https://<vault-name>.vault.azure.net/secrets/<secret-name>/<version>

Tipo:String
Aliases:SecretId
Cargo:0
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-InputObject

Objeto secreto

Tipo:PSKeyVaultSecretIdentityItem
Cargo:0
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:True
Aceitar caracteres curinga:False

-Name

Especifica o nome de um segredo a ser modificado. Esse cmdlet constrói o FQDN (nome de domínio totalmente qualificado) de um segredo com base no nome especificado por esse parâmetro, no nome do cofre de chaves e no ambiente atual.

Tipo:String
Aliases:SecretName
Cargo:1
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-NotBefore

Especifica a hora, como um objeto DateTime, antes do qual o segredo não pode ser usado. Esse parâmetro usa UTC. Para obter um objeto DateTime, use o cmdlet Get-Date.

Tipo:DateTime
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-SecretValue

Especifica o valor do segredo como um objeto SecureString. Para obter um objeto SecureString, use o cmdlet ConvertTo-SecureString. Para obter mais informações, digite Get-Help ConvertTo-SecureString.

Tipo:SecureString
Cargo:2
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-Tag

Pares chave-valor na forma de uma tabela de hash. Por exemplo: @{key0="value0"; key1=$null; key2="value2"}

Tipo:Hashtable
Aliases:Tags
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-VaultName

Especifica o nome do cofre de chaves ao qual esse segredo pertence. Esse cmdlet constrói o FQDN de um cofre de chaves com base no nome especificado por esse parâmetro e no ambiente atual.

Tipo:String
Cargo:0
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-WhatIf

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

Tipo:SwitchParameter
Aliases:wi
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

Entradas

PSKeyVaultSecretIdentityItem

Saídas

PSKeyVaultSecret