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 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-Module az -ListAvailable 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.

Conceda a su cuenta de usuario los permisos necesarios para administrar secretos en Key Vault

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>"

Reemplaza <dirección-correo-electrónico>, <id-suscripción>, <nombre-grupo-recursos> y <nombre-almacén-claves-único> 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 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.

Primero, para convertir el valor de hVFkk965BuUv en una cadena segura, escriba:

$secretvalue = ConvertTo-SecureString "hVFkk965BuUv" -AsPlainText -Force

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.