Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Nota:
El proveedor de recursos de Key Vault admite dos tipos de recursos: Vaults y HSM gestionados. El control de acceso descrito en este artículo solo se aplica a las bóvedas. Para más información sobre Access Control para HSM administrado, consulte Managed HSM Access Control.
Azure Access Control basado en Roles (Azure RBAC) es un sistema de autorización basado en Azure Resource Manager que proporciona administración centralizada del acceso a los recursos de Azure.
Azure RBAC permite a los usuarios administrar claves, secretos y permisos de certificados, y proporciona un lugar para administrar todos los permisos en todos los almacenes de claves.
El modelo de RBAC de Azure permite a los usuarios establecer permisos en distintos niveles de ámbito: grupo de administración, suscripción, grupo de recursos o recursos individuales. Azure RBAC para bóveda de claves también permite a los usuarios tener permisos independientes en claves, secretos y certificados individuales.
Para obtener más información, consulte Control de acceso basado en roles de Azure (Azure RBAC).
Información general del modelo de Key Vault access
El acceso a un Key Vault se controla a través de dos interfaces: el plano de control y el plano de datos.
El plano de control es donde se administra Key Vault. Las operaciones de este plano incluyen la creación y eliminación de bóvedas de claves, la recuperación de propiedades de la Bóveda de Claves y la actualización de directivas de acceso.
El plano de datos es donde se trabaja con los datos almacenados en una bóveda de claves. Puede agregar, eliminar y modificar claves, secretos y certificados.
Ambos planos usan Microsoft Entra ID para la autenticación. Para la autorización, el plano de control usa control de acceso basado en roles de Azure (Azure RBAC) y el plano de datos usa una directiva de acceso de Key Vault (heredada) o Azure RBAC para operaciones del plano de datos de Key Vault.
Para acceder a un Key Vault en cualquiera de los planos, todos los llamantes (usuarios o aplicaciones) deben tener la autenticación y autorización adecuadas. La autenticación establece la identidad del autor de la llamada. La autorización determina qué operaciones puede ejecutar el autor de la llamada.
Las aplicaciones acceden a los planos a través de puntos de conexión. Los controles de acceso para los dos planos funcionan de forma independiente. Para otorgar acceso a una aplicación para usar claves en una bóveda de claves, se concede acceso al plano de datos mediante Azure RBAC o una directiva de acceso a la bóveda de claves. Para conceder a un usuario acceso de lectura a las propiedades y etiquetas del Key Vault, pero no acceso a los datos (claves, secretos o certificados), se concede acceso al plano de control con Azure RBAC.
puntos de conexión del plano de acceso
En la tabla siguiente se muestran los puntos de conexión para el control y los planos de datos.
| plano de acceso | puntos de conexión de Access | Operations | mecanismo de control de acceso |
|---|---|---|---|
| Plano de control | Global: management.Azure.com:443 Microsoft Azure operado por 21Vianet: management.chinacloudapi.cn:443 Azure Us Government: management.usgovcloudapi.NET:443 |
Crear, leer, actualizar y eliminar almacenes de claves Configurar directivas de acceso a Key Vault Establecimiento de etiquetas de Key Vault |
RBAC de Azure |
| Plano de datos | Global: <vault-name>.vault.Azure.NET:443 Microsoft Azure operado por 21Vianet: <vault-name>.vault.Azure.cn:443 Azure US Government: <vault-name>.vault.usgovcloudapi.NET:443 |
Claves: encrypt, decrypt, wrapKey, unwrapKey, sign, verify, get, list, create, update, import, delete, recover, backup, restore, purge, rotate, getrotationpolicy, setrotationpolicy, release Certificados: managecontacts, getissuers, listissuers, setissuers, deleteissuers, manageissuers, get, list, create, import, update, delete, recover, backup, restore, purge Secretos: obtener, listar, establecer, eliminar, recuperar, hacer copia de seguridad, restaurar, depurar |
directiva de acceso de Key Vault (heredada) o RBAC de Azure |
Administración de acceso administrativo a Key Vault
Al crear una bóveda de claves en un grupo de recursos, se administra el acceso mediante Microsoft Entra ID. Puede conceder a usuarios o grupos la capacidad de administrar los almacenes de claves en un grupo de recursos. Puede conceder acceso en un nivel de ámbito particular asignando los roles de Azure adecuados. Para conceder acceso a un usuario para que administre bóvedas de claves, asigne un rol predefinido Key Vault Contributor al usuario en un ámbito específico. Los siguientes niveles de ámbitos se pueden asignar a un rol de Azure:
- Subscription: un rol de Azure asignado en el nivel de suscripción se aplica a todos los grupos de recursos y recursos de esa suscripción.
- Resource group: un rol de Azure asignado en el nivel de grupo de recursos se aplica a todos los recursos de ese grupo de recursos.
- Recurso específico: Un rol de Azure asignado a un recurso específico se aplica a ese recurso. En este caso, el recurso es un Key Vault específico.
Hay varios roles predefinidos. Si un rol predefinido no se ajusta a sus necesidades, puede definir uno propio. Para obtener más información, consulte Azure RBAC: Roles integrados.
Importante
Si un usuario tiene permisos Contributor en el plano de control de Key Vault, el usuario puede concederse acceso al plano de datos estableciendo una política de acceso de Key Vault. Debe controlar estrechamente quién tiene acceso de rol a los almacenes de claves. Asegúrese de que solo las personas autorizadas puedan acceder y administrar las bóvedas de claves, las claves, los secretos y los certificados.
Procedimientos recomendados para las asignaciones de roles de certificados, secretos y claves individuales
Nuestra recomendación es usar un almacén por aplicación por entorno (Desarrollo, Preproducción y Producción) con roles asignados en el ámbito del almacén de claves.
No se recomienda asignar roles a claves, secretos y certificados individuales. Las excepciones incluyen escenarios en los que:
- Los secretos individuales requieren acceso de usuario individual; por ejemplo, donde los usuarios deben acceder a su clave privada SSH para autenticarse en una máquina virtual mediante Azure Bastion.
- Los secretos individuales deben compartirse entre varias aplicaciones; por ejemplo, donde una aplicación necesita acceder a datos de otra aplicación.
Para obtener más información sobre las directrices de administración de Azure Key Vault, consulte:
- Protege tu Azure Key Vault
- límites del servicio Azure Key Vault
Roles predeterminados de Azure para las operaciones del plano de datos de Key Vault
Nota:
El rol Key Vault Contributor es solo para las operaciones del plano de control y gestionar bóvedas de claves. No permite access a claves, secretos y certificados.
| Rol integrado | Descripción | identificación |
|---|---|---|
| administrador de Key Vault | Realice todas las operaciones del plano de datos en una bóveda de claves y en todos los objetos en ella, incluidos los certificados, las claves y los secretos. No se pueden administrar los recursos de Key Vault ni asignar roles. Solo funciona para almacenes de claves que usan el modelo de permisos control de acceso basado en roles de Azure. | 00482a5a-887f-4fb3-b363-3b7fe8e74483 |
| Lector de Key Vault | Permite leer metadatos de almacenes de claves y sus certificados, claves y secretos. No se pueden leer valores confidenciales, como el contenido de los secretos o el material de las claves. Solo funciona para almacenes de claves que usan el modelo de permisos "Azure Access Control basado en roles". | 21090545-7ca7-4776-b22c-e363652d74d2 |
| Operador de purga de Key Vault | Permite la eliminación permanente de almacenes eliminados temporalmente. | a68e7c17-0ab2-4c09-9a58-125dae29748c |
| director de certificados de Key Vault | Realice cualquier acción en los certificados de un Key Vault, excepto la administración de permisos. Solo funciona para almacenes de claves que usan el modelo de permisos 'control de acceso basado en roles de Azure'. | a4417e6f-fecd-4de8-b567-7b0420556985 |
| Usuario de certificado de Key Vault | Lea todo el contenido del certificado, incluido el secreto y la parte de la clave. Solo funciona para bóvedas de claves que usan el modelo de permisos "control de acceso basado en roles de Azure". | db79e9a7-68ee-4b58-9aeb-b90e7c24fcba |
| Oficial de Cifrado de Key Vault | Realice cualquier acción en las claves de un Key Vault, excepto administrar permisos. Solo funciona para almacenes de claves que usan el modelo de permisos "Azure Control de Acceso Basado en Roles". | 14b46e9e-c2b7-41b4-b07b-48a6ebf60603 |
| Key Vault usuario de Cifrado de servicios criptográficos | Permite leer los metadatos de las claves y realizar operaciones de encapsulado/desencapsulado. Solo funciona para almacenes de claves que usan el modelo de permisos "control de acceso basado en roles de Azure". | e147488a-f6f5-4113-8e2d-b22465e65bf6 |
| Key Vault Usuario de criptografía | Permite realizar operaciones criptográficas mediante claves. Solo funciona para almacenes de claves que usan el modelo de permisos "control de acceso basado en roles de Azure". | 12338af0-0e69-4776-bea7-57ae8d297424 |
| Usuario de lanzamiento del servicio de criptografía de Key Vault | Claves de versión para Azure Confidential Computing y entornos equivalentes. Solo funciona para almacenes de claves que usan el modelo de permisos "control de acceso basado en roles de Azure". | |
| director de secretos de Key Vault | Realice cualquier acción en los secretos de una bóveda de claves, excepto administrar permisos. Solo funciona para almacenes de claves que usan el modelo de permisos 'control de acceso basado en roles de Azure'. | b86a8fe4-44ce-4948-aee5-eccb2c155cd7 |
| Usuario de secretos de Key Vault | Lea el contenido del secreto, incluida la parte secreta de un certificado con clave privada. Solo funciona para almacenes de claves que usan el modelo de permisos "control de acceso basado en roles de Azure". | 4633458b-17de-408a-b874-0445c86b69e6 |
Para obtener más información sobre las definiciones de roles integrados de Azure, consulte Roles integrados de Azure.
Administración de asignaciones de roles integrados de Key Vault en la plataforma de datos
| Rol integrado | Descripción | identificación |
|---|---|---|
| Administrador de acceso a datos de Key Vault | Administrar el acceso a Azure Key Vault agregando o quitando asignaciones de roles para el Administrador de Key Vault, Oficial de Certificados de Key Vault, Oficial Cripto de Key Vault, Usuario de Cifrado de Servicio Cripto de Key Vault, Usuario Cripto de Key Vault, Lector de Key Vault, Oficial de Secretos de Key Vault o Usuario de Secretos de Key Vault. Incluye una condición de ABAC para restringir las asignaciones de roles. | 8b54135c-b56d-4d72-a534-26097cfdc8d8 |
Uso de permisos de secreto, clave y certificado de RBAC de Azure con Key Vault
El nuevo modelo de permisos de RBAC de Azure para la bóveda de claves proporciona una alternativa al modelo de permisos de directiva de acceso del almacén.
Requisitos previos
Debe tener una suscripción de Azure. Si no lo hace, puede crear una cuenta free antes de comenzar.
Para administrar las asignaciones de roles, debe tener permisos de Microsoft.Authorization/roleAssignments/write y Microsoft.Authorization/roleAssignments/delete, por ejemplo, Administrador de acceso a datos de Key Vault (con permisos restringidos para asignar o quitar roles específicos de Key Vault), Administrador de acceso de usuario o Propietario.
Habilitación de permisos de RBAC de Azure en Key Vault
Nota:
Cambiar el modelo de permisos requiere un permiso sin restricciones "Microsoft.Authorization/roleAssignments/write", que forma parte de los roles Owner y User Access Administrator. Los roles de administrador de suscripciones clásicas, como "Administrador de servicios" y "Coadministrador", o restringidos "Key Vault Data Access Administrator" no se pueden usar para cambiar el modelo de permisos.
Habilite los permisos de RBAC de Azure en las nuevas bóvedas de claves.
Habilite los permisos de RBAC de Azure en los almacenes de claves existentes.
Importante
Establecer el modelo de permisos de Azure RBAC invalida todos los permisos de las directivas de acceso. Puede provocar interrupciones cuando no se asignan roles de Azure equivalentes.
Asignación de un rol
Nota:
Se recomienda usar el identificador de rol único, en lugar del nombre de rol en los scripts. Por consiguiente, si se cambia el nombre de un rol, los scripts seguirían funcionando. En este nombre de rol de documento se usa para mejorar la legibilidad.
Para crear una asignación de roles mediante el CLI de Azure, use el comando az role assignment:
az role assignment create --role {role-name-or-id} --assignee {assignee-upn}> --scope {scope}
Para obtener más detalles, consulte Asignar roles de Azure mediante CLI de Azure.
Asignación de roles en el ámbito de un grupo de recursos
az role assignment create --role "Key Vault Reader" --assignee {i.e user@microsoft.com} --scope /subscriptions/{subscriptionid}/resourcegroups/{resource-group-name}
Para obtener todos los detalles, consulte Assign Azure roles mediante CLI de Azure.
La asignación de roles permite enumerar objetos del Key Vault.
Asignación de roles de ámbito de Key Vault
az role assignment create --role "Key Vault Secrets Officer" --assignee {assignee-upn} --scope /subscriptions/{subscriptionid}/resourcegroups/{resource-group-name}/providers/Microsoft.KeyVault/vaults/{key-vault-name}
Para obtener detalles completos, consulte Asignar roles de Azure mediante CLI de Azure.
Asignación de roles del ámbito de secreto
Nota:
Secreto de Key Vault, certificado y asignaciones de roles de ámbito de clave solo deben usarse para escenarios limitados descritos en Mejores prácticas para las asignaciones de roles de claves, secretos y certificados individuales para cumplir con las mejores prácticas de seguridad.
az role assignment create --role "Key Vault Secrets Officer" --assignee {i.e user@microsoft.com} --scope /subscriptions/{subscriptionid}/resourcegroups/{resource-group-name}/providers/Microsoft.KeyVault/vaults/{key-vault-name}/secrets/RBACSecret
Para obtener detalles completos, consulte Asignar roles de Azure mediante CLI de Azure.
Prueba y comprobación
Nota:
Los exploradores usan el almacenamiento en caché y la actualización de página es necesaria después de quitar las asignaciones de roles. Deje varios minutos para que se actualice la asignación de roles
Validar la adición de un nuevo secreto sin el rol "Key Vault Secrets Officer" a nivel de key vault.
Vaya a la pestaña de control de acceso (IAM) de Key Vault y quite la asignación del rol "Responsable de secretos de Key Vault" para este recurso.
Vaya al secreto creado antes. Puede ver todas las propiedades del secreto.
Crear secreto (Secretos +Generar o importar) debe mostrar este error:
Crear un secreto
Valide la edición de secretos sin el rol de "Oficial de Secretos de Key Vault" a nivel de secreto.
Vaya a la pestaña de Control de Acceso (IAM) del secreto creada anteriormente y quite la asignación del rol "Key Vault Secrets Officer" para este recurso.
Vaya al secreto creado antes. Puede ver las propiedades del secreto.
Valide los secretos leídos sin rol de lector a nivel de bóveda de claves.
Vaya al grupo de recursos del Key Vault y a la pestaña de control de acceso (IAM) y quite la asignación de roles "Key Vault Reader".
Si navega a la pestaña Secretos de Key Vault debe mostrar este error:
Pestaña Secretos: error
Creación de roles personalizados
az role definition create command - Comando para crear una definición de rol en Azure.
az role definition create --role-definition '{ \
"Name": "Backup Keys Operator", \
"Description": "Perform key backup/restore operations", \
"Actions": [], \
"DataActions": [ \
"Microsoft.KeyVault/vaults/keys/read ", \
"Microsoft.KeyVault/vaults/keys/backup/action", \
"Microsoft.KeyVault/vaults/keys/restore/action" \
], \
"NotDataActions": [], \
"AssignableScopes": ["/subscriptions/{subscriptionId}"] \
}'
Para obtener más información sobre cómo crear roles personalizados, consulte:
Utilizar IA para generar asignaciones de roles en Key Vault
GitHub Copilot puede ayudarle a construir los comandos correctos de CLI de Azure o PowerShell para las asignaciones de roles de Key Vault en función de sus requisitos específicos.
I need to set up Azure RBAC for my Key Vault. Help me create the role assignment commands for the following scenario:
- Key vault name: my-app-keyvault
- Resource group: my-app-rg
- Subscription ID: <my-subscription-id>
- I need to grant a managed identity (client ID: <managed-identity-client-id>) the ability to read and write secrets, but not manage keys or certificates.
Provide both Azure CLI and PowerShell commands, and explain which built-in role is most appropriate for this least-privilege scenario.
GitHub Copilot cuenta con inteligencia artificial, por lo que son posibles sorpresas y errores. Para obtener más información, consulte Preguntas más frecuentes sobre Copilot.
Preguntas más frecuentes
¿Puedo usar las asignaciones de ámbito de objeto de Azure RBAC para proporcionar aislamiento a los equipos de aplicaciones en Key Vault?
No. El modelo de permisos de Azure RBAC permite asignar acceso a objetos individuales de Key Vault a usuarios o aplicaciones, pero cualquier operación administrativa, como el control de acceso de red, la supervisión y la gestión de objetos, requiere permisos de nivel de bóveda, los cuales pueden exponer información segura a los operadores en todos los equipos de aplicaciones.
Más información
- Información general sobre RBAC de Azure
- Asignar roles de Azure mediante el portal de Azure
- Tutorial de roles personalizados
- Protege tu Azure Key Vault