Autenticación en Azure Key Vault
La autenticación con Key Vault funciona junto con Microsoft Entra ID, que es responsable de autenticar la identidad de cualquier entidad de seguridad determinada.
En el caso de las aplicaciones, hay dos maneras de obtener una entidad de servicio:
Habilite una identidad administrada asignada por el sistema para la aplicación. Con la identidad administrada, Azure administra internamente la entidad de servicio de la aplicación y autentica la aplicación automáticamente con otros servicios de Azure. La identidad administrada está disponible para las aplicaciones implementadas en diversos servicios.
Si no puede usar la identidad administrada, registre la aplicación con su inquilino de Microsoft Entra. El registro también crea un segundo objeto de aplicación que identifica la aplicación en todos los inquilinos.
Nota:
Se recomienda usar una identidad administrada asignada por el sistema.
A continuación, se muestra información sobre la autenticación en Key Vault sin usar una identidad administrada.
Autenticación en Key Vault en el código de la aplicación
El SDK de Key Vault usa la biblioteca cliente de identidad de Azure, que permite la autenticación sin problemas en Key Vault en entornos con el mismo código. En la tabla siguiente se proporciona información sobre las bibliotecas cliente de identidad de Azure:
.NET | Python | Java | JavaScript |
---|---|---|---|
SDK .NET de Azure Identity | SDK Python de Azure Identity | SDK Java de Azure Identity | SDK JavaScript de Azure Identity |
Autenticación en Key Vault con REST
Los tokens de acceso deben enviarse al servicio mediante el encabezado de autorización HTTP:
PUT /keys/MYKEY?api-version=<api_version> HTTP/1.1
Authorization: Bearer <access_token>
Cuando no se proporciona un token de acceso o cuando el servicio no acepta un token, se devuelve el error HTTP 401
al cliente, que incluirá el encabezado WWW-Authenticate
, por ejemplo:
401 Not Authorized
WWW-Authenticate: Bearer authorization="…", resource="…"
Los parámetros del encabezado WWW-Authenticate
son los siguientes:
authorization: la dirección del servicio de autorización de OAuth2 que puede utilizarse para obtener un token de acceso para la solicitud.
resource: Nombre del recurso (
https://vault.azure.net
) que se va a utilizar en la solicitud de autorización.