Inicio rápido: Establecimiento y recuperación de un certificado de Azure Key Vault mediante Azure PowerShell

En este inicio rápido, creará un almacén de claves en Azure Key Vault con Azure PowerShell. Azure Key Vault es un servicio en la nube que funciona como un almacén de secretos seguro. Puede almacenar de forma segura claves, contraseñas, certificados y otros secretos. Para más información sobre Key Vault, consulte esta introducción. Azure PowerShell se usa para crear y administrar recursos de Azure mediante comandos o scripts. Después, se almacena un certificado.

Si no tiene una suscripción a Azure, cree una cuenta gratuita antes de empezar.

Azure Cloud Shell

En Azure se hospeda Azure Cloud Shell, un entorno de shell interactivo que puede utilizar mediante el explorador. Puede usar Bash o PowerShell con Cloud Shell para trabajar con los servicios de Azure. Puede usar los comandos preinstalados de Cloud Shell para ejecutar el código de este artículo sin tener que instalar nada en su entorno local.

Para iniciar Azure Cloud Shell:

Opción Ejemplo o vínculo
Seleccione Pruébelo en la esquina superior derecha de un bloque de código o de comandos. Solo con seleccionar Pruébelo no se copia automáticamente el código o comando en Cloud Shell. Captura de pantalla que muestra un ejemplo de la opción Pruébelo para Azure Cloud Shell.
Vaya a https://shell.azure.com o seleccione el botón Iniciar Cloud Shell para abrir Cloud Shell en el explorador. Botón para iniciar Azure Cloud Shell.
Seleccione el botón Cloud Shell en la barra de menús de la esquina superior derecha de Azure Portal. Captura de pantalla que muestra el botón de Cloud Shell en Azure Portal

Para usar Azure Cloud Shell:

  1. Inicie Cloud Shell.

  2. Seleccione el botón Copiar en un bloque de código (o bloque de comandos) para copiar el código o comando.

  3. Pegue el código o comando en la sesión de Cloud Shell. Para ello, seleccione Ctrl+Mayús+V en Windows y Linux, o bien seleccione Cmd+Mayús+V en macOS.

  4. Seleccione Enter para ejecutar el código o comando.

Si decide instalar y usar PowerShell de forma local, en este tutorial necesitará la versión 1.0.0 del módulo de Azure PowerShell, o cualquier versión posterior. Escriba $PSVersionTable.PSVersion para encontrar la versión. Si necesita actualizarla, consulte Instalación del módulo de Azure PowerShell. Si PowerShell se ejecuta localmente, también debe ejecutar Connect-AzAccount para crear una conexión con Azure.

Connect-AzAccount

Crear un grupo de recursos

Un grupo de recursos es un contenedor lógico en el que se implementan y se administran los recursos de Azure. Use el cmdlet New-AzResourceGroup de Azure PowerShell para crear un grupo de recursos denominado myResourceGroup en la ubicación eastus.

New-AzResourceGroup -Name "myResourceGroup" -Location "EastUS"

Creación de un Almacén de claves

Use el cmdlet New-AzKeyVault de Azure PowerShell para crear un almacén de claves en el grupo de recursos del paso anterior. Tendrá que proporcionar algo de información:

  • Nombre del almacén de claves: cadena de entre 3 y 24 caracteres que puede contener solo números (0-9), letras (a-z, A-Z) y guiones (-).

    Importante

    Cada almacén de claves debe tener un nombre único. Reemplace <nombre-almacén de claves-único> por el nombre del almacén de claves en los siguientes ejemplos.

  • Nombre del grupo de recursos: myResourceGroup.

  • Ubicación: EastUS.

New-AzKeyVault -Name "<your-unique-keyvault-name>" -ResourceGroupName "myResourceGroup" -Location "EastUS"

La salida de este cmdlet muestra las propiedades del almacén de claves que acaba de crear. Tome nota de las dos propiedades siguientes:

  • Nombre del almacén: nombre que ha especificado para el parámetro --Name anterior.
  • URI de almacén: en el ejemplo, es https://<su-nombre-de-almacén-de-claves-único>.vault.azure.net/. Las aplicaciones que utilizan el almacén a través de su API de REST deben usar este identificador URI.

En este momento, su cuenta de Azure es la única autorizada para realizar operaciones en este nuevo almacén.

Concesión de acceso al almacén de claves

Para conceder permisos de aplicación al almacén de claves mediante el control de acceso basado en rol (RBAC), asigna un rol mediante el cmdlet New-AzRoleAssignment de Azure PowerShell.

New-AzRoleAssignment -RoleDefinitionName "Key Vault Secrets User" -SignInName "<your-email-address>" -Scope "/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.KeyVault/vaults/<your-unique-keyvault-name>"

Reemplace <la dirección de correo electrónico>, <suscripción-id>, <> resource-group-name y <su unique-keyvault-name >por los valores reales. <dirección-correo-electrónico> es tu nombre de inicio de sesión; en su lugar, puedes usar el parámetro -ObjectId y un id. de objeto de Microsoft Entra.

Incorporación de un certificado a Key Vault

Ahora puede agregar un certificado al almacén. Este certificado puede ser utilizado por una aplicación.

Use estos comandos para crear un certificado autofirmado con una directiva denominada ExampleCertificate:

$Policy = New-AzKeyVaultCertificatePolicy -SecretContentType "application/x-pkcs12" -SubjectName "CN=contoso.com" -IssuerName "Self" -ValidityInMonths 6 -ReuseKeyOnRenewal

Add-AzKeyVaultCertificate -VaultName "<your-unique-keyvault-name>" -Name "ExampleCertificate" -CertificatePolicy $Policy

Ahora puede hacer referencia a este certificado que ha agregado a Azure Key Vault utilizando su URI. Use https://<your-unique-keyvault-name>.vault.azure.net/certificates/ExampleCertificate para obtener la versión actual.

Para ver el certificado que se ha almacenado previamente:

Get-AzKeyVaultCertificate -VaultName "<your-unique-keyvault-name>" -Name "ExampleCertificate"

Solución de problemas:

La operación devolvió un código de estado no válido "Prohibido"

Si recibe este error, la cuenta que accede a Azure Key Vault no tiene los permisos adecuados para crear certificados.

Ejecute el siguiente comando de Azure PowerShell para asignar dichos permisos:

Set-AzKeyVaultAccessPolicy -VaultName <KeyVaultName> -ObjectId <AzureObjectID> -PermissionsToCertificates get,list,update,create

Limpieza de recursos

Otras guías de inicio rápido y tutoriales de esta colección se basan en los valores de esta. Si tiene pensado seguir trabajando en otras guías de inicio rápido y tutoriales, considere la posibilidad de dejar estos recursos activos.

Cuando ya no los necesite, puede usar el cmdlet Remove-AzResourceGroup de Azure PowerShell para eliminar el grupo de recursos y todos los recursos relacionados.

Remove-AzResourceGroup -Name "myResourceGroup"

Pasos siguientes

En este inicio rápido ha creado una instancia de Key Vault y ha almacenado un certificado en ella. Para más información sobre Key Vault y cómo integrarlo con las aplicaciones, continúe con los artículos siguientes.