Compartir a través de


Inicio rápido: Establecimiento y recuperación de un secreto de Azure Key Vault mediante 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, puede consultar esta introducción. En esta guía de inicio rápido, va a usar Azure PowerShell para crear un almacén de claves. Posteriormente, va a almacenar un secreto en el almacén recién creado.

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 Intro para ejecutar el código o comando.

Si decide instalar y usar PowerShell de forma local, en este tutorial necesitará la versión 5.0.0 del módulo de Azure PowerShell, o cualquier versión posterior. Escriba Get-InstalledModule -Name Az para encontrar la versión. Si necesita actualizarla, consulte Cómo instalar 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 Secrets 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 secreto a Key Vault

Para agregar un secreto al almacén, solo tiene que realizar un par de pasos. En este caso, ha agregado una contraseña que una aplicación podría usar. La contraseña se denomina ExamplePassword y almacena el valor de hVFkk965BuUv.

En primer lugar, ejecute el siguiente comando y escriba el valor hVFkk965BuUv cuando se le pida que lo convierta en una cadena segura:

$secretvalue = Read-Host -Prompt 'Enter the example password' -AsSecureString

Luego, use el cmdlet Set-AzKeyVaultSecret Azure PowerShell para crear un secreto en Key Vault denominado ExamplePassword con el valor hVFkk965BuUv:

$secret = Set-AzKeyVaultSecret -VaultName "<your-unique-keyvault-name>" -Name "ExamplePassword" -SecretValue $secretvalue

Recuperar un secreto del almacén de claves

Para ver el valor contenido en el secreto como texto sin formato, use el cmdlet de Azure PowerShell Get-AzKeyVaultSecret:

$secret = Get-AzKeyVaultSecret -VaultName "<your-unique-keyvault-name>" -Name "ExamplePassword" -AsPlainText

Ya ha creado una instancia de Key Vault, ha almacenado un secreto y, posteriormente, lo ha recuperado.

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 comando Remove-AzResourceGroup para quitar el grupo de recursos, la instancia de Key Vault 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 secreto en ella. Para más información sobre Key Vault y cómo integrarlo con las aplicaciones, continúe con los artículos siguientes.