Creación y configuración de identidades administradas
Un reto habitual al crear una solución en la nube es la administración de secretos, credenciales, certificados y claves. Estos elementos seguros se usan para proteger la comunicación entre los servicios. Las identidades administradas eliminan la necesidad de administrar las credenciales para los desarrolladores.
Aunque los desarrolladores pueden almacenar de forma segura los secretos en Azure Key Vault, los servicios necesitan una manera de acceder a él. Las identidades administradas proporcionan una identidad administrada automáticamente en Microsoft Entra ID para que la usen las aplicaciones al conectarse a recursos. La identidad administrada admite la autenticación a través de Microsoft Entra ID. Las aplicaciones pueden usar identidades administradas para obtener tokens de Microsoft Entra sin necesidad de administrar credenciales.
Ventajas del uso de las identidades administradas
- No es necesario administrar credenciales. Las credenciales ni siquiera están accesibles.
- Puede usar identidades administradas para autenticarse en cualquier recurso que admita la autenticación de Microsoft Entra, incluidas sus propias aplicaciones. Las identidades administradas se pueden usar sin ningún costo adicional.
Tipos de identidades administradas
| Tipo de identidad | Descripción y uso |
|---|---|
| Asignada por el sistema | Algunos servicios de Azure permiten habilitar una identidad administrada directamente en una instancia de servicio. Al habilitar una identidad administrada asignada por el sistema, se crea una identidad en Microsoft Entra ID. La identidad está vinculada al ciclo de vida de esa instancia de servicio. Por tanto, cuando se elimina el recurso, Azure elimina automáticamente la identidad. Por diseño, solo ese recurso de Azure puede usar esta identidad para solicitar tokens de Microsoft Entra ID. |
| Asignada por el usuario | También es posible crear una identidad administrada como un recurso independiente de Azure. Puede crear una identidad administrada asignada por el usuario y asignarla a una o varias instancias de un servicio de Azure. En las identidades administradas asignadas por el usuario, la identidad se administra independientemente de los recursos que la utilicen. |
Recuerde siempre que las identidades administradas se asignan a una aplicación. Por lo tanto, debe configurar y administrar la identidad en los servicios en los que se usa. Si tiene una aplicación que se ejecuta en una máquina virtual (Linux o Windows), deberá agregar y configurar la identidad allí. Si usa una identidad administrada con una aplicación en la nube, una función o un servicio de aplicación, debe configurarla y administrarla allí. Veamos cómo se agrega una identidad administrada a una aplicación creada en la nube mediante App Service.
Identidad administrada en Azure Portal para una instancia de App Service
Los pasos básicos para crear y agregar una identidad a la aplicación son los siguientes:
- Compile la aplicación.
- Abra la aplicación en Azure Portal.
- Seleccione Identidad en el menú y elija Asignado por el sistema o Asignado por el usuario.
- Seleccione el elemento + Agregar y complete el asistente.
Puede realizar una acción similar mediante el uso de un script en la CLI, PowerShell o con una plantilla. El ejemplo podría tener el aspecto siguiente:
Uso de la CLI
az webapp identity assign --resource-group <group-name> --name <app-name> --identities <identity-name>
Mediante PowerShell con el módulo AZ.ManagedServiceIdentity instalado
Update-AzFunctionApp -Name <app-name> -ResourceGroupName <group-name> -IdentityType UserAssigned -IdentityId $userAssignedIdentity.Id
Mediante una plantilla
"identity": {
"type": "UserAssigned",
"userAssignedIdentities": {
"<RESOURCEID>": {}
}
}
Valor de la identidad administrada
Como se indica al principio de esta página, cuando compila una aplicación necesita un método para concederle acceso a los recursos. Para aprovechar los conceptos de confianza cero puede usar identidades administradas. De esta manera, solo asigna los privilegios mínimos que necesita la identidad administrada. Después, asigne solo acceso a los recursos mínimos necesarios. Los privilegios mínimos mantendrán protegidos los datos y las aplicaciones.