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. | ![]() |
Vaya a https://shell.azure.com o seleccione el botón Iniciar Cloud Shell para abrir Cloud Shell en el explorador. | ![]() |
Seleccione el botón Cloud Shell en la barra de menús de la esquina superior derecha de Azure Portal. | ![]() |
Para usar Azure Cloud Shell:
Inicie Cloud Shell.
Seleccione el botón Copiar en un bloque de código (o bloque de comandos) para copiar el código o comando.
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.
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. Debe proporcionar 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 estas dos propiedades:
- Nombre del almacén: el nombre que proporcionó al parámetro -Name.
- URI del almacén: En el ejemplo, este URI es https://<your-unique-keyvault-name>.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.
Conceda a su cuenta de usuario los permisos necesarios para administrar secretos en Key Vault
Para obtener permisos para el almacén de claves mediante Control de acceso basado en rol (RBAC), asigne un rol a su "Nombre principal de usuario" (UPN) mediante el cmdlet de Azure PowerShell New-AzRoleAssignment.
New-AzRoleAssignment -SignInName "<upn>" -RoleDefinitionName "Key Vault Certificate Officer" -Scope "/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.KeyVault/vaults/<your-unique-keyvault-name>"
Reemplace <upn>, <subscription-id>, <resource-group-name> y <your-unique-keyvault-name> por los valores reales. El UPN normalmente tendrá el formato de una dirección de correo electrónico (por ejemplo, username@domain.com).
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.
- Lea una introducción a Azure Key Vault.
- Consulte la referencia para los cmdlets de Key Vault de Azure PowerShell.
- Consulte Introducción a la seguridad de Azure Key Vault