Add-AzKeyVaultKey

Crea una clave en un almacén de claves o importa una clave en un almacén de claves.

Syntax

Add-AzKeyVaultKey
   [-VaultName] <String>
   [-Name] <String>
   -Destination <String>
   [-Disable]
   [-KeyOps <String[]>]
   [-Expires <DateTime>]
   [-NotBefore <DateTime>]
   [-Tag <Hashtable>]
   [-Size <Int32>]
   [-KeyType <String>]
   [-CurveName <String>]
   [-Exportable]
   [-Immutable]
   [-ReleasePolicyPath <String>]
   [-UseDefaultCVMPolicy]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Add-AzKeyVaultKey
   [-VaultName] <String>
   [-Name] <String>
   -KeyFilePath <String>
   [-KeyFilePassword <SecureString>]
   [-Destination <String>]
   [-Disable]
   [-KeyOps <String[]>]
   [-Expires <DateTime>]
   [-NotBefore <DateTime>]
   [-Tag <Hashtable>]
   [-KeyType <String>]
   [-CurveName <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Add-AzKeyVaultKey
   -HsmName <String>
   [-Name] <String>
   [-Disable]
   [-KeyOps <String[]>]
   [-Expires <DateTime>]
   [-NotBefore <DateTime>]
   [-Tag <Hashtable>]
   [-Size <Int32>]
   -KeyType <String>
   [-CurveName <String>]
   [-Exportable]
   [-Immutable]
   [-ReleasePolicyPath <String>]
   [-UseDefaultCVMPolicy]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Add-AzKeyVaultKey
   -HsmName <String>
   [-Name] <String>
   -KeyFilePath <String>
   [-KeyFilePassword <SecureString>]
   [-Disable]
   [-KeyOps <String[]>]
   [-Expires <DateTime>]
   [-NotBefore <DateTime>]
   [-Tag <Hashtable>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Add-AzKeyVaultKey
   [-InputObject] <PSKeyVault>
   [-Name] <String>
   -Destination <String>
   [-Disable]
   [-KeyOps <String[]>]
   [-Expires <DateTime>]
   [-NotBefore <DateTime>]
   [-Tag <Hashtable>]
   [-Size <Int32>]
   [-KeyType <String>]
   [-CurveName <String>]
   [-Exportable]
   [-Immutable]
   [-ReleasePolicyPath <String>]
   [-UseDefaultCVMPolicy]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Add-AzKeyVaultKey
   [-InputObject] <PSKeyVault>
   [-Name] <String>
   -KeyFilePath <String>
   [-KeyFilePassword <SecureString>]
   [-Destination <String>]
   [-Disable]
   [-KeyOps <String[]>]
   [-Expires <DateTime>]
   [-NotBefore <DateTime>]
   [-Tag <Hashtable>]
   [-KeyType <String>]
   [-CurveName <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Add-AzKeyVaultKey
   [-HsmObject] <PSManagedHsm>
   [-Name] <String>
   [-Disable]
   [-KeyOps <String[]>]
   [-Expires <DateTime>]
   [-NotBefore <DateTime>]
   [-Tag <Hashtable>]
   [-Size <Int32>]
   -KeyType <String>
   [-CurveName <String>]
   [-Exportable]
   [-Immutable]
   [-ReleasePolicyPath <String>]
   [-UseDefaultCVMPolicy]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Add-AzKeyVaultKey
   [-HsmObject] <PSManagedHsm>
   [-Name] <String>
   -KeyFilePath <String>
   [-KeyFilePassword <SecureString>]
   [-Disable]
   [-KeyOps <String[]>]
   [-Expires <DateTime>]
   [-NotBefore <DateTime>]
   [-Tag <Hashtable>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Add-AzKeyVaultKey
   [-ResourceId] <String>
   [-Name] <String>
   -Destination <String>
   [-Disable]
   [-KeyOps <String[]>]
   [-Expires <DateTime>]
   [-NotBefore <DateTime>]
   [-Tag <Hashtable>]
   [-Size <Int32>]
   [-KeyType <String>]
   [-CurveName <String>]
   [-Exportable]
   [-Immutable]
   [-ReleasePolicyPath <String>]
   [-UseDefaultCVMPolicy]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Add-AzKeyVaultKey
   [-ResourceId] <String>
   [-Name] <String>
   -KeyFilePath <String>
   [-KeyFilePassword <SecureString>]
   [-Destination <String>]
   [-Disable]
   [-KeyOps <String[]>]
   [-Expires <DateTime>]
   [-NotBefore <DateTime>]
   [-Tag <Hashtable>]
   [-KeyType <String>]
   [-CurveName <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Add-AzKeyVaultKey
   -HsmResourceId <String>
   [-Name] <String>
   [-Disable]
   [-KeyOps <String[]>]
   [-Expires <DateTime>]
   [-NotBefore <DateTime>]
   [-Tag <Hashtable>]
   [-Size <Int32>]
   -KeyType <String>
   [-CurveName <String>]
   [-Exportable]
   [-Immutable]
   [-ReleasePolicyPath <String>]
   [-UseDefaultCVMPolicy]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Add-AzKeyVaultKey
   -HsmResourceId <String>
   [-Name] <String>
   -KeyFilePath <String>
   [-KeyFilePassword <SecureString>]
   [-Disable]
   [-KeyOps <String[]>]
   [-Expires <DateTime>]
   [-NotBefore <DateTime>]
   [-Tag <Hashtable>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Description

El cmdlet Add-AzKeyVaultKey crea una clave en un almacén de claves de Azure Key Vault o importa una clave en un almacén de claves. Use este cmdlet para agregar claves mediante cualquiera de los métodos siguientes:

  • Cree una clave en un módulo de seguridad de hardware (HSM) en el servicio Key Vault.
  • Cree una clave en el software en el servicio Key Vault.
  • Importe una clave desde su propio módulo de seguridad de hardware (HSM) a HSM en el servicio Key Vault.
  • Importe una clave desde un archivo .pfx en el equipo.
  • Importe una clave de un archivo .pfx en el equipo a módulos de seguridad de hardware (HSM) en el servicio Key Vault. Para cualquiera de estas operaciones, puede proporcionar atributos clave o aceptar la configuración predeterminada. Si crea o importa una clave que tenga el mismo nombre que una clave existente en el almacén de claves, la clave original se actualiza con los valores que especifique para la nueva clave. Puede acceder a los valores anteriores mediante el URI específico de la versión para esa versión de la clave. Para obtener información sobre las versiones clave y la estructura de URI, consulte Acerca de las claves y los secretos en la documentación de la API rest de Key Vault. Nota: Para importar una clave desde su propio módulo de seguridad de hardware, primero debe generar un paquete BYOK (un archivo con una extensión de nombre de archivo .byok) mediante el conjunto de herramientas BYOK de Azure Key Vault. Para más información, consulte Generación y transferencia de claves protegidas con HSM para Azure Key Vault. Como procedimiento recomendado, realice una copia de seguridad de la clave después de crearla o actualizarla mediante el cmdlet Backup-AzKeyVaultKey. No hay ninguna funcionalidad de recuperación, por lo que si elimina accidentalmente la clave o la elimina y, a continuación, cambia de opinión, la clave no se puede recuperar a menos que tenga una copia de seguridad de ella que pueda restaurar.

Ejemplos

Ejemplo 1: Creación de una clave

Add-AzKeyVaultKey -VaultName 'contoso' -Name 'ITSoftware' -Destination 'Software'

Vault/HSM Name : contoso
Name           : ITSoftware
Key Type       : RSA
Key Size       : 2048
Curve Name     : 
Version        : 67da57e9cadf48a2ad8d366b115843ab
Id             : https://contoso.vault.azure.net:443/keys/ITSoftware/67da57e9cadf48a2ad8d366b115843ab
Enabled        : True
Expires        :
Not Before     :
Created        : 5/21/2018 11:10:58 PM
Updated        : 5/21/2018 11:10:58 PM
Purge Disabled : False
Tags           :

Este comando crea una clave protegida por software denominada ITSoftware en el almacén de claves denominado Contoso.

Ejemplo 2: Creación de una clave EC

Add-AzKeyVaultKey -VaultName test-kv -Name test-key -Destination Software -KeyType EC

Vault/HSM Name : test-kv
Name           : test-key
Key Type       : EC
Key Size       :
Curve Name     : P-256
Version        : 4da74af2b4fd47d6b1aa0b05c9a2ed13
Id             : https://test-kv.vault.azure.net:443/keys/test-key/4da74af2b4fd47d6b1aa0b05c9a2ed13
Enabled        : True
Expires        :
Not Before     :
Created        : 8/24/2021 6:38:34 AM
Updated        : 8/24/2021 6:38:34 AM
Recovery Level : Recoverable+Purgeable
Tags           :

Este comando crea una clave EC protegida por software denominada test-key en el almacén de claves denominado test-kv. Su nombre de curva es P-256 de forma predeterminada.

Ejemplo 3: Creación de una clave protegida por HSM

Add-AzKeyVaultKey -VaultName 'contoso' -Name 'ITHsm' -Destination 'HSM'

Vault Name     : contoso
Name           : ITHsm
Version        : 67da57e9cadf48a2ad8d366b115843ab
Id             : https://contoso.vault.azure.net:443/keys/ITSoftware/67da57e9cadf48a2ad8d366b115843ab
Enabled        : True
Expires        :
Not Before     :
Created        : 5/21/2018 11:10:58 PM
Updated        : 5/21/2018 11:10:58 PM
Purge Disabled : False
Tags           :

Este comando crea una clave protegida por HSM en el almacén de claves denominado Contoso.

Ejemplo 4: Creación de una clave con valores no predeterminados

$KeyOperations = 'decrypt', 'verify'
$Expires = (Get-Date).AddYears(2).ToUniversalTime()
$NotBefore = (Get-Date).ToUniversalTime()
$Tags = @{'Severity' = 'high'; 'Accounting' = "true"}
Add-AzKeyVaultKey -VaultName 'contoso' -Name 'ITHsmNonDefault' -Destination 'HSM' -Expires $Expires -NotBefore $NotBefore -KeyOps $KeyOperations -Disable -Tag $Tags

Vault/HSM Name : contoso
Name           : ITHsmNonDefault
Key Type       : RSA
Key Size       : 2048
Version        : 929bfc14db84439b823ffd1bedadaf5f
Id             : https://contoso.vault.azure.net:443/keys/ITHsmNonDefault/929bfc14db84439b823ffd1bedadaf5f
Enabled        : False
Expires        : 5/21/2020 11:12:43 PM
Not Before     : 5/21/2018 11:12:50 PM
Created        : 5/21/2018 11:13:17 PM
Updated        : 5/21/2018 11:13:17 PM
Purge Disabled : False
Tags           : Name        Value
                 Severity    high
                 Accounting  true

El primer comando almacena los valores descifrado y comprobación en la variable $KeyOperations. El segundo comando crea un objeto DateTime , definido en UTC, mediante el cmdlet Get-Date . Ese objeto especifica un tiempo de dos años en el futuro. El comando almacena esa fecha en la variable $Expires. Para obtener más información, escriba Get-Help Get-Date. El tercer comando crea un objeto DateTime mediante el cmdlet Get-Date . Ese objeto especifica la hora UTC actual. El comando almacena esa fecha en la variable $NotBefore. El comando final crea una clave denominada ITHsmNonDefault que es una clave protegida por HSM. El comando especifica valores para las operaciones de clave permitidas almacenadas $KeyOperations. El comando especifica horas para los parámetros Expires y NotBefore creados en los comandos anteriores y etiquetas para la gravedad alta y el equipo de TI. La nueva clave está deshabilitada. Puede habilitarlo mediante el cmdlet Set-AzKeyVaultKey .

Ejemplo 5: Importación de una clave protegida por HSM

Add-AzKeyVaultKey -VaultName 'contoso' -Name 'ITByok' -KeyFilePath 'C:\Contoso\ITByok.byok' -Destination 'HSM'

Vault Name     : contoso
Name           : ITByok
Version        : 67da57e9cadf48a2ad8d366b115843ab
Id             : https://contoso.vault.azure.net:443/keys/ITByok/67da57e9cadf48a2ad8d366b115843ab
Enabled        : True
Expires        :
Not Before     :
Created        : 5/21/2018 11:10:58 PM
Updated        : 5/21/2018 11:10:58 PM
Purge Disabled : False
Tags           :

Este comando importa la clave denominada ITByok desde la ubicación que especifica el parámetro KeyFilePath . La clave importada es una clave protegida por HSM. Para importar una clave desde su propio módulo de seguridad de hardware, primero debe generar un paquete BYOK (un archivo con una extensión de nombre de archivo .byok) mediante el conjunto de herramientas BYOK de Azure Key Vault. Para más información, consulte Generación y transferencia de claves protegidas con HSM para Azure Key Vault.

Ejemplo 6: Importación de una clave protegida por software

$Password = ConvertTo-SecureString -String 'Password' -AsPlainText -Force
Add-AzKeyVaultKey -VaultName 'contoso' -Name 'ITPfx' -KeyFilePath 'C:\Contoso\ITPfx.pfx' -KeyFilePassword $Password

Vault Name     : contoso
Name           : ITPfx
Version        : 67da57e9cadf48a2ad8d366b115843ab
Id             : https://contoso.vault.azure.net:443/keys/ITPfx/67da57e9cadf48a2ad8d366b115843ab
Enabled        : True
Expires        :
Not Before     :
Created        : 5/21/2018 11:10:58 PM
Updated        : 5/21/2018 11:10:58 PM
Purge Disabled : False
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 $Password. Para obtener más información, escriba Get-Help ConvertTo-SecureString. El segundo comando crea una contraseña de software en el almacén de claves de Contoso. El comando especifica la ubicación de la clave y la contraseña almacenada en $Password.

Ejemplo 7: Importación de una clave y asignación de atributos

$Password = ConvertTo-SecureString -String 'password' -AsPlainText -Force
$Expires = (Get-Date).AddYears(2).ToUniversalTime()
$Tags = @{ 'Severity' = 'high'; 'Accounting' = "true" }
Add-AzKeyVaultKey -VaultName 'contoso' -Name 'ITPfxToHSM' -Destination 'HSM' -KeyFilePath 'C:\Contoso\ITPfx.pfx' -KeyFilePassword $Password -Expires $Expires -Tag $Tags

Vault Name     : contoso
Name           : ITPfxToHSM
Version        : 929bfc14db84439b823ffd1bedadaf5f
Id             : https://contoso.vault.azure.net:443/keys/ITPfxToHSM/929bfc14db84439b823ffd1bedadaf5f
Enabled        : True
Expires        : 5/21/2020 11:12:43 PM
Not Before     :
Created        : 5/21/2018 11:13:17 PM
Updated        : 5/21/2018 11:13:17 PM
Purge Disabled : False
Tags           : Name        Value
                 Severity    high
                 Accounting  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 $Password. El segundo comando crea un objeto DateTime mediante el cmdlet Get-Date y, a continuación, almacena ese objeto en la variable $Expires. El tercer comando crea la variable $tags para establecer etiquetas de gravedad alta y TI. El comando final importa una clave como una clave HSM desde la ubicación especificada. El comando especifica la hora de expiración almacenada en $Expires y la contraseña almacenadas en $Password y aplica las etiquetas almacenadas en $tags.

Ejemplo 8: Generación de una clave de intercambio de claves (KEK) para la característica "traiga su propia clave" (BYOK)

$key = Add-AzKeyVaultKey -VaultName $vaultName -Name $keyName -Destination HSM -Size 2048 -KeyOps "import"

Genera una clave (denominada clave de intercambio de claves (KEK)). La KEK debe ser una clave RSA-HSM que tenga solo la operación de importación de la clave. Solo la SKU Premium de Key Vault admite claves RSA-HSM. Para obtener más información, consulte https://learn.microsoft.com/azure/key-vault/keys/hsm-protected-keys

Ejemplo 9: Creación de una clave segura en hsm administrado

<# release_policy_template.json
{
  "anyOf": [
    {
      "allOf": [
        {
          "claim": "<claim name>",
          "equals": "<value to match>"
        }
      ],
      "authority": "<issuer>"
    }
  ],
  "version": "1.0.0"
}
#>
Add-AzKeyVaultKey -HsmName testmhsm -Name test-key -KeyType RSA -Exportable -ReleasePolicyPath release_policy.json

Vault/HSM Name : testmhsm
Name           : test-key
Key Type       : RSA
Key Size       : 2048
Curve Name     : 
Version        : ed6b026bf0a605042006635713d33ef6
Id             : https://testmhsm.managedhsm.azure.net:443/keys/test-key/ed6b026bf0a605042006635713d33ef6
Enabled        : True
Expires        : 
Not Before     : 
Created        : 6/2/2022 7:14:37 AM
Updated        : 6/2/2022 7:14:37 AM
Recovery Level : Recoverable+Purgeable
Release Policy : 
                 Content Type   : application/json; charset=utf-8
                 Policy Content : {"anyOf":[{"allOf":[{"claim":"x-ms-sgx-is-debuggable","equals":"true"}],"authority":"htt 
                 ps://sharedeus.eus.attest.azure.net/"}],"version":"1.0.0"}
                 Immutable      : False


Tags           :

Cree una clave segura en hsm administrado denominado testmhsm. Su nombre es clave de prueba y el tipo es RSA.

Ejemplo 10: Agregar una clave para una máquina virtual confidencial a un almacén de claves.

New-AzKeyVault -Name $keyVaultName -Location $location -ResourceGroupName $resourceGroupName -Sku Premium -EnablePurgeProtection -EnabledForDiskEncryption;
$cvmAgent = Get-AzADServicePrincipal -ApplicationId 'bf7b6499-ff71-4aa2-97a4-f372087be7f0';
Set-AzKeyVaultAccessPolicy -VaultName $keyVaultName -ResourceGroupName $resourceGroupName -ObjectId $cvmAgent.id -PermissionsToKeys get,release;

$keySize = 3072;
Add-AzKeyVaultKey -VaultName $keyVaultName -Name $keyName -Size $keySize -KeyOps wrapKey,unwrapKey -KeyType RSA -Destination HSM -Exportable -UseDefaultCVMPolicy;

Vault/HSM Name : <Vault Name>
Name           : <Key Name>
Key Type       : RSA
Key Size       : 3072
Curve Name     :
Version        : <Version>
Id             : <Id>
Enabled        : True
Expires        :
Not Before     :
Created        : 9/9/2022 8:36:00 PM
Updated        : 9/9/2022 8:36:00 PM
Recovery Level : Recoverable
Release Policy :
                 Content Type   : application/json; charset=utf-8
                 Policy Content : <Policy Content>
                 Immutable      : False
Tags           :

Parámetros

-Confirm

Le solicita su confirmación antes de ejecutar el cmdlet.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-CurveName

Especifica el nombre de la curva de criptografía de curva elíptica, este valor es válido cuando KeyType es EC.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DefaultProfile

Las credenciales, la cuenta, el inquilino y la suscripción que se usan para la comunicación con Azure

Type:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Destination

Especifica si se va a agregar la clave como una clave protegida por software o una clave protegida por HSM en el servicio Key Vault. Los valores válidos son: HSM y Software. Nota: Para usar HSM como destino, debe tener un almacén de claves que admita HSM. Para obtener más información sobre los niveles de servicio y las funcionalidades de Azure Key Vault, consulte el sitio web Precios de Key Vault . Este parámetro es necesario cuando se crea una nueva clave. Si importa una clave mediante el parámetro KeyFilePath , este parámetro es opcional:

  • Si no especifica este parámetro y este cmdlet importa una clave que tiene la extensión de nombre de archivo .byok, importa esa clave como una clave protegida por HSM. El cmdlet no puede importar esa clave como clave protegida por software.
  • Si no especifica este parámetro y este cmdlet importa una clave que tiene una extensión de nombre de archivo .pfx, importa la clave como una clave protegida por software.
Type:String
Accepted values:HSM, Software, HSM, Software
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Disable

Indica que la clave que va a agregar está establecida en un estado inicial de deshabilitado. Se producirá un error en cualquier intento de usar la clave. Use este parámetro si va a cargar previamente las claves que pretende habilitar más adelante.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Expires

Especifica la hora de expiración de la clave en UTC, como un objeto DateTime , para la clave que agrega este cmdlet. Si no se especifica, la clave no expirará. Para obtener un objeto DateTime , use el cmdlet Get-Date . Para obtener más información, escriba Get-Help Get-Date. Tenga en cuenta que las expiraciones se omiten para la clave de intercambio de claves usada en el proceso BYOK.

Type:Nullable<T>[DateTime]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Exportable

Indica si se puede exportar la clave privada.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-HsmName

Nombre de HSM. El cmdlet construye el FQDN de un HSM administrado en función del nombre y del entorno seleccionado actualmente.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-HsmObject

Objeto HSM.

Type:PSManagedHsm
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-HsmResourceId

Identificador de recurso del HSM.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Immutable

Establece la directiva de versión como estado inmutable. Una vez marcado como inmutable, esta marca no se puede restablecer y la directiva no se puede cambiar en ninguna circunstancia.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InputObject

Objeto Vault.

Type:PSKeyVault
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-KeyFilePassword

Especifica una contraseña para el archivo importado 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. Debe especificar esta contraseña para importar un archivo con una extensión de nombre de archivo .pfx.

Type:SecureString
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-KeyFilePath

Especifica la ruta de acceso de un archivo local que contiene material de clave que importa este cmdlet. Las extensiones de nombre de archivo válidas son .byok y .pfx.

  • Si el archivo es un archivo .byok, la clave se protege automáticamente mediante HSM después de la importación y no puede invalidar este valor predeterminado.
  • Si el archivo es un archivo .pfx, la clave se protege automáticamente mediante software después de la importación. Para invalidar este valor predeterminado, establezca el parámetro Destination en HSM para que la clave esté protegida por HSM. Al especificar este parámetro, el parámetro Destination es opcional.
Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-KeyOps

Especifica una matriz de operaciones que se pueden realizar mediante la clave que agrega este cmdlet. Si no se especifica este parámetro, se pueden realizar todas las operaciones. Los valores aceptables para este parámetro son una lista separada por comas de las operaciones con clave, tal y como se define en la especificación JSON Web Key (JWK):

  • encrypt
  • decrypt
  • wrapKey
  • unwrapKey
  • sign
  • verify
  • import (solo para KEK, vea el ejemplo 7)
Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-KeyType

Especifica el tipo de clave de esta clave. Al importar claves BYOK, el valor predeterminado es "RSA".

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Name

Especifica el nombre de la clave que se va a agregar al almacén de claves. Este cmdlet construye el nombre de dominio completo (FQDN) de una clave en función del nombre que especifica este parámetro, el nombre del almacén de claves y el entorno actual. El nombre debe ser una cadena de 1 a 63 caracteres de longitud que solo contiene 0-9, a-z, A-Z y - (el símbolo de guión).

Type:String
Aliases:KeyName
Position:1
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-NotBefore

Especifica la hora, como un objeto DateTime , antes del cual no se puede usar la clave. Este parámetro usa UTC. Para obtener un objeto DateTime , use el cmdlet Get-Date . Si no especifica este parámetro, la clave se puede usar inmediatamente.

Type:Nullable<T>[DateTime]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ReleasePolicyPath

Ruta de acceso a un archivo que contiene la definición de directiva JSON. Reglas de directiva en las que se puede exportar una clave.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ResourceId

Identificador de recurso del almacén.

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Size

Tamaño de clave RSA, en bits. Si no se especifica, el servicio proporcionará un valor predeterminado seguro.

Type:Nullable<T>[Int32]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Tag

Pares clave-valor en forma de tabla hash. Por ejemplo: @{key0="value0"; key1=$null; key2="value2"}

Type:Hashtable
Aliases:Tags
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-UseDefaultCVMPolicy

Especifica que se va a usar la directiva predeterminada en la que se puede exportar la clave para el cifrado de disco CVM.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-VaultName

Especifica el nombre del almacén de claves al que este cmdlet agrega la clave. 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.

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Muestra lo que sucedería si se ejecutara el cmdlet. El cmdlet no se ejecuta.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Entradas

PSKeyVault

PSManagedHsm

String

Salidas

PSKeyVaultKey