Para obtener información general sobre los HSM administrados, consulte ¿Qué es HSM administrado?.
Prerrequisitos
Se requiere una suscripción Azure. Si no tienes una, crea una cuenta gratuita antes de empezar.
También necesita lo siguiente:
Nota:
Todos los comandos siguientes muestran dos métodos de uso para la CLI. Un método utiliza los parámetros --hsm-name y --name (para el nombre de clave). El otro método usa el --id parámetro , donde puede especificar toda la dirección URL, incluido el nombre de clave cuando corresponda. El último método es útil cuando el autor de la llamada (un usuario o una aplicación) no tiene acceso de lectura en el plano de control y solo tiene acceso restringido en el plano de datos.
Algunas interacciones con el material clave requieren permisos específicos de RBAC local. Para ver una lista completa de los roles y permisos de RBAC local integrados, consulte Roles integrados de RBAC local de HSM administrado. Para asignar estos permisos a un usuario, consulte Protección del acceso a los HSM administrados.
Creación de una clave de HSM
Nota:
No se puede exportar una clave generada o importada en HSM administrado. La única excepción a la regla sin exportación es cuando se crea una clave con una directiva de versión de clave específica. Esta directiva permite exportar la clave solo a entornos de computación confidencial de confianza (enclaves seguros) que defina explícitamente. Esta funcionalidad de exportación limitada está diseñada para escenarios de computación segura específicos y no es lo mismo que una exportación de claves de uso general. Para conocer los procedimientos recomendados para la portabilidad y durabilidad clave, consulte el artículo vinculado.
En el portal Azure, vaya al recurso HSM administrado.
En el menú izquierdo, en Configuración, seleccione Claves.
Seleccione Generate/Import (Generar/importar) en la lista desplegable Generate/Import/Restore Backup (Generar/importar/restaurar copia de seguridad ).
Elija el tipo de clave (RSA-HSM, EC-HSM o oct-HSM), establezca el tamaño o la curva de la clave, el nombre y las operaciones permitidas y, a continuación, seleccione Crear.
Use el az keyvault key create comando para crear una clave.
Crear una clave RSA
En este ejemplo se muestra cómo crear una clave RSA de 3072 bits que solo se usa para las operaciones wrapKey y unwrapKey (--ops).
az keyvault key create --hsm-name <hsm-name> --name myrsakey --ops wrapKey unwrapKey --kty RSA-HSM --size 3072
## OR
# Note the key name (myrsakey) in the URI
az keyvault key create --id https://<hsm-name>.managedhsm.azure.net/keys/myrsakey --ops wrapKey unwrapKey --kty RSA-HSM --size 3072
La get operación solo devuelve la clave pública y los atributos de clave. No devuelve la clave privada (si es una clave asimétrica) o el material de clave (si es una clave simétrica).
Creación de una clave EC
En el ejemplo siguiente se muestra cómo crear una clave EC con la curva P-256. La clave solo es para las operaciones de firma y verificación (--ops) y tiene dos etiquetas, uso y nombreDeAplicación. Use etiquetas para agregar metadatos adicionales a la clave para realizar el seguimiento y la administración.
az keyvault key create --hsm-name <hsm-name> --name myec256key --ops sign verify --tags 'usage=signing' 'appname=myapp' --kty EC-HSM --curve P-256
## OR
# Note the key name (myec256key) in the URI
az keyvault key create --id https://<hsm-name>.managedhsm.azure.net/keys/myec256key --ops sign verify --tags 'usage=signing' 'appname=myapp' --kty EC-HSM --curve P-256
Creación de una clave simétrica de 256 bits
En este ejemplo se muestra cómo crear una clave simétrica de 256 bits que solo se usa para operaciones de cifrado y descifrado (--ops).
az keyvault key create --hsm-name <hsm-name> --name myaeskey --ops encrypt decrypt --tags 'usage=encryption' 'appname=myapp' --kty oct-HSM --size 256
## OR
# Note the key name (myaeskey) in the URI
az keyvault key create --id https://<hsm-name>.managedhsm.azure.net/keys/myaeskey --ops encrypt decrypt --tags 'usage=encryption' 'appname=myapp' --kty oct-HSM --size 256
Use el Add-AzKeyVaultKey cmdlet para crear una clave.
Crear una clave RSA
En este ejemplo se muestra cómo crear una clave RSA de 3072 bits que solo se usa para las operaciones wrapKey y unwrapKey .
Add-AzKeyVaultKey -HsmName <hsm-name> -Name myrsakey -KeyType RSA-HSM -Size 3072 -KeyOps wrapKey,unwrapKey
Creación de una clave EC
En este ejemplo se muestra cómo crear una clave EC con la curva P-256 para las operaciones de firma y comprobación .
Add-AzKeyVaultKey -HsmName <hsm-name> -Name myec256key -KeyType EC-HSM -CurveName P-256 -KeyOps sign,verify -Tag @{usage='signing'; appname='myapp'}
Creación de una clave simétrica de 256 bits
En este ejemplo se muestra cómo crear una clave simétrica de 256 bits para las operaciones de cifrado y descifrado .
Add-AzKeyVaultKey -HsmName <hsm-name> -Name myaeskey -KeyType oct-HSM -Size 256 -KeyOps encrypt,decrypt -Tag @{usage='encryption'; appname='myapp'}
En el portal Azure, vaya al recurso HSM administrado.
En el menú izquierdo, en Configuración, seleccione Claves.
Seleccione la clave que desea ver. El portal muestra los atributos, las versiones y las etiquetas de la clave.
Use el az keyvault key show comando para ver atributos, versiones y etiquetas para una clave.
az keyvault key show --hsm-name <hsm-name> --name myrsakey
## OR
# Note the key name (myaeskey) in the URI
az keyvault key show --id https://<hsm-name>.managedhsm.azure.net/keys/myrsakey
Use el Get-AzKeyVaultKey cmdlet para ver atributos, versiones y etiquetas para una clave.
Get-AzKeyVaultKey -HsmName <hsm-name> -Name myrsakey
Enumeración de claves
En el portal Azure, vaya al recurso HSM administrado.
En el menú izquierdo, en Configuración, seleccione Claves. En el portal se enumeran todas las claves del HSM administrado.
Use el az keyvault key list comando para enumerar todas las claves dentro de un HSM administrado.
az keyvault key list --hsm-name <hsm-name>
## OR
# use full URI
az keyvault key list --id https://<hsm-name>.managedhsm.azure.net/
Use el Get-AzKeyVaultKey cmdlet para enumerar todas las claves de un HSM administrado.
Get-AzKeyVaultKey -HsmName <hsm-name>
Eliminación de una clave
En el portal Azure, vaya al recurso HSM administrado.
En el menú izquierdo, en Configuración, seleccione Claves.
Seleccione la clave que desea eliminar.
Seleccione Eliminar y confirme.
Use el az keyvault key delete comando para eliminar una clave de un HSM administrado. La eliminación temporal siempre está activada. Por lo tanto, una clave eliminada permanece en estado eliminado y puede recuperarla hasta que pase el número de días de retención. Después, la clave se purga (se elimina permanentemente) sin posibilidad de recuperación.
az keyvault key delete --hsm-name <hsm-name> --name myrsakey
## OR
# Note the key name (myaeskey) in the URI
az keyvault key delete --id https://<hsm-name>.managedhsm.azure.net/keys/myrsakey
Use el Remove-AzKeyVaultKey cmdlet para eliminar una clave. La eliminación temporal siempre está activada, por lo que una clave eliminada permanece recuperable hasta que expire el período de retención.
Remove-AzKeyVaultKey -HsmName <hsm-name> -Name myrsakey
Enumeración de claves eliminadas
En el portal Azure, vaya al recurso HSM administrado.
En el menú izquierdo, en Configuración, seleccione Claves.
Seleccione Administrar claves eliminadas para ver las claves en estado eliminado temporalmente.
Utiliza el comando az keyvault key list-deleted para listar todas las claves en estado eliminado en el HSM administrado.
az keyvault key list-deleted --hsm-name <hsm-name>
## OR
# use full URI
az keyvault key list-deleted --id https://<hsm-name>.managedhsm.azure.net/
Use el Get-AzKeyVaultKey cmdlet con el -InRemovedState parámetro para enumerar las claves eliminadas.
Get-AzKeyVaultKey -HsmName <hsm-name> -InRemovedState
Recuperación de una clave eliminada
En el portal Azure, vaya al recurso HSM administrado.
En el menú de la izquierda, en Configuración, seleccione Claves y, a continuación, seleccione Administrar claves eliminadas.
Seleccione la clave eliminada que desea recuperar.
Seleccione Recuperar.
Use el az keyvault key list-deleted comando para enumerar todas las claves en estado eliminado en el HSM administrado. Para recuperar una clave, use el parámetro --id. Debe tener en cuenta el valor recoveryId de la clave eliminada obtenido del comando az keyvault key list-deleted.
az keyvault key recover --hsm-name <hsm-name> --name myrsakey
## OR
# Note the key name (myaeskey) in the URI
az keyvault key recover --id https://<hsm-name>.managedhsm.azure.net/deletedKeys/myrsakey
Use el Undo-AzKeyVaultKeyRemoval cmdlet para recuperar una clave eliminada.
Undo-AzKeyVaultKeyRemoval -HsmName <hsm-name> -Name myrsakey
Purga (eliminación permanente) de una clave
Nota:
Si el HSM administrado tiene habilitada la protección de purga, no se permite la operación de purga. La clave se purga automáticamente cuando se pasa el período de retención.
En el portal Azure, vaya al recurso HSM administrado.
En el menú de la izquierda, en Configuración, seleccione Claves y, a continuación, seleccione Administrar claves eliminadas.
Seleccione la clave eliminada que desea purgar.
Seleccione Purgar, y luego confirme.
Advertencia
Esta operación elimina permanentemente la clave.
Use el az keyvault key purge comando para purgar (eliminar permanentemente) una clave.
az keyvault key purge --hsm-name <hsm-name> --name myrsakey
## OR
# Note the key name (myaeskey) in the URI
az keyvault key purge --id https://<hsm-name>.managedhsm.azure.net/deletedKeys/myrsakey
Use el Remove-AzKeyVaultKey cmdlet con el -InRemovedState parámetro para purgar una clave eliminada.
Remove-AzKeyVaultKey -HsmName <hsm-name> -Name myrsakey -InRemovedState
Advertencia
Esta operación elimina permanentemente la clave.
Creación de una copia de seguridad de una sola clave
La copia de seguridad de claves no está disponible actualmente en el portal de Azure. Use el CLI de Azure o el Azure PowerShell.
Use az keyvault key backup para crear una copia de seguridad de una clave. El archivo de copia de seguridad es un blob cifrado vinculado de forma criptográfica al dominio de seguridad del HSM de origen. Sólo puedes restaurarlo en HSMs que compartan el mismo dominio de seguridad. Obtenga más información sobre el dominio de seguridad.
az keyvault key backup --hsm-name <hsm-name> --name myrsakey --file myrsakey.backup
## OR
# Note the key name (myaeskey) in the URI
az keyvault key backup --id https://<hsm-name>.managedhsm.azure.net/keys/myrsakey --file myrsakey.backup
Use el Backup-AzKeyVaultKey cmdlet para crear una copia de seguridad de claves. El archivo de copia de seguridad es un blob cifrado vinculado de forma criptográfica al dominio de seguridad del HSM de origen.
Backup-AzKeyVaultKey -HsmName <hsm-name> -Name myrsakey -OutputFile myrsakey.backup
Restauración de una única clave a partir de una copia de seguridad
En el portal Azure, vaya al recurso HSM administrado.
En el menú izquierdo, en Configuración, seleccione Claves.
Seleccione Generar/Importar/Restaurar copia de seguridad y elija Restaurar llave de la copia de seguridad.
Vaya a y seleccione el archivo de copia de seguridad y, a continuación, seleccione Restaurar.
Use az keyvault key restore para restaurar una sola clave. El HSM de origen donde creó la copia de seguridad debe compartir el mismo dominio de seguridad que el HSM de destino donde va a restaurar la clave.
Nota:
Se produce un error en la operación de restauración si existe una clave con el mismo nombre en estado activo o eliminado.
az keyvault key restore --hsm-name <hsm-name> --name myrsakey --file myrsakey.backup
## OR
# Note the key name (myaeskey) in the URI
az keyvault key restore --id https://<hsm-name>.managedhsm.azure.net/keys/myrsakey --file myrsakey.backup
Use el Restore-AzKeyVaultKey cmdlet para restaurar una sola clave. El HSM de origen donde creó la copia de seguridad debe compartir el mismo dominio de seguridad que el HSM de destino.
Nota:
Se produce un error en la operación de restauración si existe una clave con el mismo nombre en estado activo o eliminado.
Restore-AzKeyVaultKey -HsmName <hsm-name> -InputFile myrsakey.backup
Importación de una clave desde un archivo
La importación de claves no está disponible actualmente en el portal de Azure. Use el CLI de Azure o el Azure PowerShell.
Use el az keyvault key import comando para importar una clave (solo RSA y EC) desde un archivo. El archivo de certificado debe tener una clave privada y debe usar la codificación PEM (como se define en RFC 1421, 1422, 1423, 1424).
az keyvault key import --hsm-name <hsm-name> --name myrsakey --pem-file mycert.key --pem-password 'mypassword'
## OR
# Note the key name (<key-name>) in the URI
az keyvault key import --id https://<hsm-name>.managedhsm.azure.net/keys/<key-name> --pem-file mycert.key --password 'mypassword'
Use el Add-AzKeyVaultKey cmdlet con el -KeyFilePath parámetro para importar una clave desde un archivo PEM.
Add-AzKeyVaultKey -HsmName <hsm-name> -Name myrsakey -KeyFilePath ./mycert.key -KeyFilePassword (ConvertTo-SecureString -String 'mypassword' -AsPlainText -Force) -KeyType RSA-HSM
Para importar una clave de HSM local a HSM administrado, consulte Importación de claves protegidas por HSM en HSM administrado (BYOK).
Pasos siguientes