Set-AzKeyVaultSecret
Crea o actualiza un secreto en un almacén de claves.
Sintaxis
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>]
Description
El cmdlet Set-AzKeyVaultSecret crea o actualiza un secreto en un almacén de claves de Azure Key Vault. Si el secreto no existe, este cmdlet lo crea. Si ya existe el secreto, este cmdlet crea una nueva versión del secreto.
Ejemplos
Ejemplo 1: Modificación del valor de un secreto mediante atributos predeterminados
$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 :
El primer comando convierte una cadena en una cadena segura mediante el cmdlet ConvertTo-SecureString y, a continuación, almacena esa cadena en la variable $Secret. Para obtener más información, escriba Get-Help ConvertTo-SecureString
.
El segundo comando modifica el valor del secreto denominado ITSecret en el almacén de claves denominado Contoso. El valor secreto se convierte en el valor almacenado en $Secret.
Ejemplo 2: Modificación del valor de un secreto mediante 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
El primer comando convierte una cadena en una cadena segura mediante el cmdlet ConvertTo-SecureString y, a continuación, almacena esa cadena en la variable $Secret. Para obtener más información, escriba Get-Help ConvertTo-SecureString
.
Los comandos siguientes definen atributos personalizados para la fecha de expiración, las etiquetas y el tipo de contexto, y almacenan los atributos en variables.
El comando final modifica los valores del secreto denominado ITSecret en el almacén de claves denominado Contoso, mediante el uso de los valores especificados anteriormente como variables.
Ejemplo 3: Creación de un secreto en azure Key Vault mediante el comando Set-Secret en el 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
En este ejemplo se establece un secreto denominado secureSecret
en azure key vault test-kv
por comando Set-Secret
en el módulo Microsoft.PowerShell.SecretManagement
.
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 |
-ContentType
Especifica el tipo de contenido de un secreto. Para eliminar el tipo de contenido existente, especifique una cadena vacía.
Tipo: | String |
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 |
-Disable
Indica que este cmdlet deshabilita un secreto.
Tipo: | SwitchParameter |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-Expires
Especifica la hora de expiración, como un objeto DateTime , para el secreto que actualiza este cmdlet.
Este parámetro usa la hora universal coordinada (UTC). Para obtener un objeto DateTime , use el cmdlet Get-Date . Para obtener más información, escriba Get-Help Get-Date
.
Tipo: | Nullable<T>[DateTime] |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-InputObject
Secret (objeto)
Tipo: | PSKeyVaultSecretIdentityItem |
Posición: | 0 |
Valor predeterminado: | None |
Requerido: | True |
Aceptar entrada de canalización: | True |
Aceptar caracteres comodín: | False |
-Name
Especifica el nombre de un secreto que se va a modificar. Este cmdlet construye el nombre de dominio completo (FQDN) de un secreto basado en el nombre que especifica este parámetro, el nombre del almacén de claves y el entorno actual.
Tipo: | String |
Alias: | SecretName |
Posición: | 1 |
Valor predeterminado: | None |
Requerido: | True |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-NotBefore
Especifica la hora, como un objeto DateTime , antes del cual no se puede usar el secreto. Este parámetro usa UTC. Para obtener un objeto DateTime , use el cmdlet Get-Date .
Tipo: | Nullable<T>[DateTime] |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-SecretValue
Especifica el valor del secreto como un objeto SecureString . Para obtener un objeto SecureString , use el cmdlet ConvertTo-SecureString . Para obtener más información, escriba Get-Help ConvertTo-SecureString
.
Tipo: | SecureString |
Posición: | 2 |
Valor predeterminado: | None |
Requerido: | True |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-Tag
Pares clave-valor en forma de tabla hash. Por ejemplo: @{key0="value0"; key1=$null; key2="value2"}
Tipo: | Hashtable |
Alias: | Tags |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-VaultName
Especifica el nombre del almacén de claves al que pertenece este secreto. Este cmdlet construye el FQDN de un almacén de claves en función del nombre que especifica este parámetro y el entorno actual.
Tipo: | String |
Posición: | 0 |
Valor predeterminado: | None |
Requerido: | True |
Aceptar entrada de canalización: | False |
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 |