Compartir a través de


Guía del desarrollador de Azure Key Vault

Azure Key Vault es un servicio en la nube que proporciona almacenamiento seguro y administración de claves criptográficas, secretos y certificados. Esta guía ayuda a los desarrolladores a integrar Key Vault en sus aplicaciones.

Información general

Azure Key Vault le permite:

  • Almacenamiento seguro: proteja las claves, los secretos y los certificados sin escribir código de seguridad personalizado.
  • Administración simplificada de claves: centralice las operaciones criptográficas y la administración del ciclo de vida de las claves.
  • Claves propiedad del cliente: permite a los clientes administrar sus propias claves mientras se centra en las características principales de la aplicación.
  • Administración de claves externas: use claves para firmar y cifrar, a la vez que las mantiene externas a la aplicación.

Para obtener información general sobre Azure Key Vault, consulte Acerca de Azure Key Vault.

Escenarios de desarrollador

Entre las tareas comunes para desarrolladores con Key Vault se incluyen las siguientes:

  • Almacenar y recuperar secretos: administre de forma segura las cadenas de conexión, las contraseñas, las claves de API y los tokens de SAS. Para más información, consulte Acerca de los secretos.
  • Usar claves para el cifrado y la firma: realice operaciones criptográficas sin exponer material de clave a la aplicación. Para más información, consulte Acerca de las claves.
  • Administrar certificados: automatice el aprovisionamiento, la renovación y la implementación de certificados para SSL/TLS. Para más información, consulte Acerca de los certificados.

Versiones preliminares públicas

Publicamos periódicamente versiones preliminares públicas de las nuevas características de Key Vault. Para probar las características en versión preliminar y proporcionar comentarios, póngase en contacto con nosotros en azurekeyvault@microsoft.com. Para obtener información sobre las últimas características y actualizaciones, consulte Novedades de Azure Key Vault.

Creación y administración de almacenes de claves

Key Vault usa un modelo de acceso de dos planos:

Use el rol de colaborador predefinido de Key Vault para conceder acceso de administración a los recursos de Key Vault. Para más información sobre la autenticación y la autorización, consulte Autenticación en Azure Key Vault.

Seguridad de red

Reduzca la exposición de red mediante la configuración de puntos de conexión privados, firewalls o puntos de conexión de servicio. Para obtener instrucciones de seguridad de red completas, incluidas las opciones de configuración de la mayoría a las menos restrictivas, consulte Protección de azure Key Vault: Seguridad de red y Configuración de las opciones de red de Azure Key Vault.

API y SDK para la administración del almacén de claves

En la tabla a continuación se enumeran los SDKs y las guías de inicio rápido para administrar recursos de Key Vault (operaciones del plano de control). Para obtener las últimas versiones e instrucciones de instalación, consulte Bibliotecas cliente.

CLI de Azure PowerShell REST API Administrador de recursos .NET Pitón Java JavaScript
Referencia
Inicio rápido
Referencia
Inicio rápido
Referencia Referencia
Inicio rápido
Referencia Referencia Referencia Referencia

Autenticación en Key Vault mediante el código

Key Vault utiliza la autenticación de Microsoft Entra, que requiere un principal de seguridad de Microsoft Entra para otorgar acceso. Una entidad de seguridad de Microsoft Entra puede ser un usuario, una entidad de servicio de aplicación, una identidad administrada para los recursos de Azure o un grupo de cualquiera de estos tipos.

Procedimientos recomendados de autenticación

En el caso de las aplicaciones implementadas en Azure, use identidades administradas para eliminar la necesidad de almacenar credenciales en el código. Para obtener instrucciones de autenticación detalladas y recomendaciones de entidad de seguridad para distintos entornos (producción, desarrollo, local), consulte Autenticación en Azure Key Vault y Protección de su instancia de Azure Key Vault.

Bibliotecas cliente de Azure Identity

La biblioteca cliente de Azure Identity admite los escenarios de autenticación anteriores y se integra con los SDK de Key Vault. Puede usar la biblioteca cliente de Identidad de Azure en entornos y plataformas sin cambiar el código. La biblioteca recupera automáticamente los tokens de autenticación de los usuarios que han iniciado sesión en Azure a través de la CLI de Azure, Visual Studio, Visual Studio Code y otros medios.

Para más información sobre la biblioteca cliente de Identidad de Azure, consulte:

.NET Pitón Java JavaScript
SDK de Identidad de Azure .NET SDK de Identidad de Azure Para Python SDK de Identidad de Azure para Java JavaScript del SDK de Identidad de Azure

Nota:

Se recomienda la biblioteca de autenticación de aplicaciones para la versión 3 del SDK de .NET de Key Vault, pero ahora está en desuso. Para migrar a la versión 4 del SDK de .NET de Key Vault, siga las instrucciones de migración de AppAuthentication a Azure.Identity.

Para ver tutoriales sobre cómo autenticarse en Key Vault en aplicaciones, consulte:

Administración de claves, certificados y secretos

Nota:

Los SDK para .NET, Python, Java, JavaScript, PowerShell y la CLI de Azure forman parte del proceso de versión de características de Key Vault mediante la versión preliminar pública y la disponibilidad general con el equipo de servicio de Key Vault. Hay otros clientes del SDK para Key Vault disponibles, pero son desarrollados y admitidos por equipos de SDK individuales mediante GitHub y se lanzan según el cronograma de cada equipo. Para ver las versiones más recientes del SDK y los paquetes de instalación, consulte Bibliotecas cliente.

El plano de datos controla el acceso a claves, certificados y secretos. Puede usar Azure RBAC con Key Vault para el control de acceso a través del plano de datos.

API y SDK para claves

En la tabla siguiente se enumeran los SDK y los inicios rápidos para trabajar con claves (operaciones del plano de datos). Para obtener más información sobre las claves, consulte Acerca de las claves.

CLI de Azure PowerShell REST API Administrador de recursos .NET Pitón Java JavaScript
Referencia
Inicio rápido
Referencia
Inicio rápido
Referencia Referencia
Inicio rápido
Referencia
Inicio rápido
Referencia
Inicio rápido
Referencia
Inicio rápido
Referencia
Inicio rápido

Otras bibliotecas

Cliente de criptografía para Key Vault y HSM administrado

Este módulo proporciona un cliente de criptografía para el módulo cliente de Azure Key Vault Keys para Go.

Nota:

El equipo del SDK de Azure no admite este proyecto, pero se alinea con los clientes de criptografía en otros idiomas admitidos.

Language Referencia
Go Referencia

API y SDK para certificados

En la tabla siguiente se enumeran los SDK y los inicios rápidos para trabajar con certificados (operaciones del plano de datos). Para obtener más información sobre los certificados, consulte Acerca de los certificados.

CLI de Azure PowerShell REST API Administrador de recursos .NET Pitón Java JavaScript
Referencia
Inicio rápido
Referencia
Inicio rápido
Referencia N/A Referencia
Inicio rápido
Referencia
Inicio rápido
Referencia
Inicio rápido
Referencia
Inicio rápido

API y SDK para secretos

En la tabla siguiente se enumeran los SDK y los inicios rápidos para trabajar con secretos (operaciones del plano de datos). Para obtener más información sobre los secretos, consulte Acerca de los secretos.

CLI de Azure PowerShell REST API Administrador de recursos .NET Pitón Java JavaScript
Referencia
Inicio rápido
Referencia
Inicio rápido
Referencia Referencia
Inicio rápido
Referencia
Inicio rápido
Referencia
Inicio rápido
Referencia
Inicio rápido
Referencia
Inicio rápido

Uso de secretos

Usa Azure Key Vault para almacenar solo secretos para tu aplicación. Entre los ejemplos de secretos que se deben almacenar en Key Vault se incluyen:

  • Secretos de aplicación cliente
  • Cadenas de conexión
  • Passwords
  • Claves de acceso compartido
  • Claves SSH

Cualquier información relacionada con secretos, como los nombres de usuario y los identificadores de aplicación, se puede almacenar como una etiqueta en un secreto. Para cualquier otra configuración confidencial, debe usar Azure App Configuration.

Para obtener paquetes de instalación y código fuente, consulte Bibliotecas cliente.

Uso de Key Vault en aplicaciones

Para aprovechar las características más recientes de Key Vault, se recomienda usar los SDK de Key Vault disponibles para usar secretos, certificados y claves en la aplicación. Los SDK de Key Vault y la API REST se actualizan a medida que se publican nuevas características para el producto y siguen los procedimientos recomendados y las directrices.

Para escenarios básicos, hay otras bibliotecas y soluciones de integración para un uso simplificado, con compatibilidad proporcionada por asociados de Microsoft o comunidades de código abierto.

En el caso de los certificados, puede usar:

En el caso de los secretos, puede usar:

Ejemplos de código

Para obtener ejemplos completos de uso de Key Vault con aplicaciones, consulte Ejemplos de código de Azure Key Vault.

Instrucciones específicas de la tarea

Los siguientes artículos y escenarios proporcionan instrucciones específicas de tareas para trabajar con Azure Key Vault:

Integración con Key Vault

Los siguientes servicios y escenarios usan o integran con Key Vault:

  • El cifrado en reposo permite la codificación (cifrado) de datos cuando se conservan. Las claves de cifrado de datos a menudo se cifran con una clave de cifrado de claves en Azure Key Vault para limitar aún más el acceso.
  • Azure Information Protection le permite administrar su propia clave de inquilino. Por ejemplo, en lugar de que Microsoft administre su clave de tenant (que es el valor predeterminado), puede administrar su propia clave para cumplir con las regulaciones específicas que se aplican a su organización. La administración de su propia clave de inquilino también se denomina bring your own key (BYOK).
  • Azure Private Link le permite acceder a los servicios de Azure (por ejemplo, Azure Key Vault, Azure Storage y Azure Cosmos DB) y a los servicios de asociados o clientes hospedados en Azure a través de un punto de conexión privado en la red virtual.
  • La integración de Key Vault con Azure Event Grid permite a los usuarios recibir notificaciones cuando el estado de un secreto almacenado en Key Vault ha cambiado. Puede distribuir nuevas versiones de secretos a las aplicaciones o rotar secretos que están a punto de expirar para evitar interrupciones.
  • Proteja los secretos de Azure DevOps del acceso no deseado en Key Vault.
  • Use secretos almacenados en Key Vault para conectarse a Azure Storage desde Azure Databricks.
  • Configure y ejecute el proveedor de Azure Key Vault correspondiente al controlador Secrets Store CSI en Kubernetes.

Recuperación ante desastres y continuidad empresarial

Key Vault proporciona recuperación ante desastres integrada con replicación regional automática. En el caso de las implementaciones de producción, habilite la eliminación temporal y la protección contra purgas e implemente copias de seguridad periódicas. Para más información, consulte Disponibilidad y redundancia de Azure Key Vault, administración de recuperación de Azure Key Vault y copia de seguridad de Azure Key Vault.

Rendimiento y escalabilidad

Al desarrollar aplicaciones que usan Key Vault, tenga en cuenta los siguientes procedimientos recomendados de rendimiento y escalabilidad:

  • Límites de servicio: Key Vault tiene límites de servicio para transacciones por almacén y por región. Si se superan estos límites, se produce una limitación. Para más información, consulte Límites de servicio de Azure Key Vault.
  • Guía de limitaciones: implemente la lógica de reintento con retroceso exponencial para manejar las respuestas de restricción. Para más información, consulte Guía de limitación de Azure Key Vault.
  • Almacenamiento en caché: almacene en caché secretos y certificados en la aplicación para reducir las llamadas a Key Vault y mejorar el rendimiento.
  • Administración de conexiones: reutilice las conexiones HTTP a Key Vault siempre que sea posible para reducir la latencia y mejorar el rendimiento.

Supervisión y registro

Habilite el registro y la supervisión para la seguridad, el cumplimiento y la solución de problemas. Configure las opciones de diagnóstico, las notificaciones de Event Grid y las alertas para eventos críticos. Para obtener instrucciones detalladas, consulte Supervisión de Azure Key Vault, registro de Azure Key Vault, Supervisión de Key Vault con Azure Event Grid y Protección de Azure Key Vault: Registro y detección de amenazas.

Parámetros comunes y patrones de solicitud

Al trabajar con la API REST de Key Vault, resulta útil comprender los parámetros comunes y los patrones de solicitud y respuesta:

  • Versiones de API: Key Vault usa API con versiones. Especifique siempre la versión de la API en las solicitudes.
  • Encabezados comunes: obtenga información sobre los encabezados HTTP obligatorios y opcionales para las solicitudes de Key Vault. Para más información, consulte Parámetros y encabezados comunes de Azure Key Vault.
  • Solicitudes de autenticación: comprenda cómo se adquieren y usan los tokens de autenticación. Para obtener más información, consulte Autenticación, solicitudes y respuestas.
  • Códigos de error: familiarícese con los códigos de error comunes de la API REST para controlar los errores correctamente. Para más información, consulte Códigos de error de la API REST de Azure Key Vault.

Solución de problemas

Para obtener ayuda para resolver problemas comunes:

Procedimientos recomendados de seguridad

Para obtener instrucciones de seguridad completas, como la administración de identidades y acceso, la protección de datos, el cumplimiento, la gobernanza y las estrategias de copia de seguridad, consulte Protección de Azure Key Vault.

Recursos adicionales

Conceptos de Key Vault

Administración y operaciones

Comunidad y soporte técnico