Uso del portal para crear una aplicación de Azure AD y una entidad de servicio con acceso a los recursos
En este artículo se muestra cómo crear una nueva entidad de servicio y aplicación de Azure Active Directory (Azure AD) que puede usar con el control de acceso basado en rol. Cuando haya aplicaciones, servicios hospedados o herramientas automatizadas que deban tener acceso a ciertos recursos o modificarlos, puedes crear una identidad para la aplicación. Esta identidad se conoce como una entidad de servicio. El acceso a los recursos está restringido por los roles asignados a la entidad de servicio, lo que permite controlar a qué recursos pueden tener acceso y en qué nivel. Por motivos de seguridad, se recomienda usar siempre entidades de servicio con las herramientas automatizadas, en lugar de permitirles iniciar sesión con una identidad de usuario.
En este artículo se muestra cómo usar el portal para crear la entidad de servicio en Azure Portal. Se centra en una aplicación de un único inquilino donde la aplicación está diseñada para ejecutarse en una sola organización. Normalmente, utiliza aplicaciones de inquilino único para aplicaciones de línea de negocio que se ejecutan dentro de su organización. También puede usar Azure PowerShell o la CLI de Azure para crear una entidad de servicio.
Importante
En lugar de crear una entidad de servicio, considere el uso de identidades administradas para recursos de Azure para la identidad de la aplicación. Si el código se ejecuta en un servicio que admite identidades administradas y tiene acceso a recursos que admiten la autenticación de Azure AD, las identidades administradas son la opción ideal para usted. Para obtener más información sobre las identidades administradas para recursos de Azure, incluidos los servicios que actualmente lo admiten, consulte ¿Qué es Managed Identities for Azure Resources?.
Registro de aplicaciones, objetos de aplicación y entidades de servicio
No hay una manera directa de crear una entidad de servicio con Azure Portal. Cuando registre una aplicación mediante Azure Portal, se crearán automáticamente un objeto de aplicación y una entidad de servicio en el inquilino o directorio principal. Para obtener más información sobre la relación entre el registro de aplicaciones, los objetos de aplicación y las entidades de servicio, consulte Objetos de aplicación y de entidad de servicio de Azure Active Directory.
Permisos necesarios para registrar una aplicación
Debe tener permisos suficientes para registrar una aplicación en su inquilino de Azure AD y asignar a la aplicación un rol en su suscripción de Azure.
Comprobación de los permisos de Azure AD
Seleccione Azure Active Directory.
Busque su rol en Información general->My fuente. Si tiene el rol Usuario, debe asegurarse de que los no administradores pueden registrar aplicaciones.
En el panel izquierdo, seleccione Usuarios y, luego, Configuración de usuario.
Compruebe la configuración de App registrations (Registros de aplicaciones). Este valor solo puede configurarlo un administrador. Si se configura en Sí, cualquier usuario en el inquilino de Azure Active Directory puede registrar una aplicación.
Si la configuración de registro de aplicaciones se establece en No, solo los usuarios con un rol de administrador pueden registrar este tipo de aplicaciones. Consulte Roles integrados de Azure AD para conocer los roles de administrador disponibles y los permisos específicos en Azure AD que se otorgan a cada uno. Si la cuenta está asignada al rol Usuario, pero la opción Registros de aplicaciones está limitada a los administradores, pida al administrador que le asigne un rol de administrador para poder crear y administrar todos los aspectos de los registros de aplicaciones, o que permita a los usuarios registrar las aplicaciones.
Comprobación de los permisos de suscripción de Azure
En su suscripción de Azure, su cuenta debe tener acceso a Microsoft.Authorization/*/Write
para asignar un rol a una aplicación de AD. Esta acción se concede mediante el rol Propietario o el rol Administrador de acceso de usuario. Si su cuenta tiene asignado al rol Colaborador, no tiene los permisos adecuados. Recibirá un error al intentar asignarle un rol a la entidad de servicio.
Para comprobar los permisos de su suscripción:
Busque y seleccione Suscripciones o seleccione Suscripciones en la página Inicio.
Seleccione la suscripción en la que quiere crear la entidad de servicio.
Si no ve la suscripción que busca, seleccione el filtro de suscripciones globales. Asegúrese de que la suscripción que desea está seleccionada para el portal.
Seleccione Mis permisos. A continuación, seleccione Click here to view complete access details for this subscription (Haga clic aquí para ver los detalles de acceso completos para esta suscripción).
Seleccione Asignaciones de roles para ver los roles asignados y determine si tiene los permisos correspondientes para asignar un rol a una aplicación de AD. En caso contrario, pida al administrador de suscripciones que le agregue al rol Administrador de acceso de usuario. En la imagen siguiente, el usuario está asignado al rol Propietario, lo que significa que el usuario tiene los permisos adecuados.
Registro de una aplicación con Azure AD y creación de una entidad de servicio
Vamos a saltar directamente a la creación de la identidad. Si experimenta un problema, compruebe los permisos necesarios para asegurarse de que su cuenta puede crear la identidad.
Inicie sesión en su cuenta de Azure mediante Azure Portal.
Seleccione Azure Active Directory.
Seleccione App registrations (Registros de aplicaciones).
Seleccione Nuevo registro.
Asigna un nombre a la aplicación, por ejemplo, «example-app». Seleccione un tipo de cuenta compatible, que determinará quién puede usar la aplicación. En URI de redireccionamiento, seleccione Web para indicar el tipo de aplicación que quiere crear. Escriba el URI al que se envía el token de acceso. No se pueden crear credenciales para una aplicación nativa. No se puede usar ese tipo en una aplicación automatizada. Después de configurar los valores, seleccione Registrar.
Ha creado una aplicación de Azure AD y una entidad de servicio.
Nota:
Puede registrar varias aplicaciones con el mismo nombre en Azure AD, pero las aplicaciones deben tener distintos identificadores de aplicación (cliente).
Asignación de un rol a la aplicación
Para acceder a los recursos de la suscripción, debe asignar un rol a la aplicación. Decida qué rol ofrece los permisos adecuados para la aplicación. Para obtener información sobre los roles disponibles, consulte Roles integrados de Azure.
Puede establecer el ámbito en el nivel de suscripción, grupo de recursos o recurso. Los permisos se heredan en los niveles inferiores del ámbito. Por ejemplo, el hecho de agregar una aplicación al rol Lector para un grupo de recursos significa que esta puede leer el grupo de recursos y los recursos que contiene.
En Azure Portal, seleccione el nivel de ámbito al que desea asignar la aplicación. Por ejemplo, para asignar un rol en el ámbito de la suscripción, busque y seleccione Suscripciones, o seleccione Suscripciones en la página Inicio.
Seleccione la suscripción concreta que se asignará a la aplicación.
Si no ve la suscripción que busca, seleccione el filtro de suscripciones globales. Asegúrese de que la suscripción que desea está seleccionada para el portal.
Seleccione Access Control (IAM) .
Seleccione Agregar>Agregar asignación de roles para abrir la página Agregar asignación de roles.
En la pestaña Rol, selecciona el rol que desea asignar a la aplicación en la lista. Por ejemplo, para que la aplicación ejecute acciones como reiniciar, iniciar y detener instancias, seleccione Colaborador. Obtén más información sobre los roles disponibles.
Selecciona el botón Siguiente para ir a la pestaña Miembros. Selecciona Asignar acceso a>usuario, grupo o entidad de servicio y, a continuación, selecciona Seleccionar miembros. De manera predeterminada, las aplicaciones de Azure AD no se muestran en las opciones disponibles. Para buscar la aplicación, busca por nombre (por ejemplo, «example-app») y selecciónala en la lista devuelta. Haga clic en el botón Seleccionar. A continuación haz clic en el botón Revisar y asignar.
La entidad de servicio está configurada. Puede empezar a usarla para ejecutar aplicaciones o scripts. Para administrar la entidad de servicio (permisos, permisos confirmados por el usuario, ver qué usuarios han dado su consentimiento, revisar permisos, ver información de inicio de sesión, etc.), vaya a Aplicaciones empresariales.
En la sección siguiente se muestra cómo obtener valores necesarios al iniciar sesión mediante programación.
Obtención de valores de identificador de inquilino y aplicación para iniciar sesión
Al iniciar sesión mediante programación, pase el identificador de inquilino con la solicitud de autenticación y el identificador de aplicación. También necesita un certificado o una clave de autenticación (lo que se describe en la sección siguiente). Para obtener estos valores, use los pasos siguientes:
Seleccione Azure Active Directory.
En Registros de aplicaciones, en Azure AD, seleccione su aplicación.
Copie el identificador del directorio (inquilino) y almacénelo en el código de la aplicación.
El identificador de directorio (inquilino) también se puede encontrar en la página de información general del directorio predeterminado.
Copie el id. de aplicación y almacénelo en el código de la aplicación.
Autenticación: Dos opciones
Hay dos tipos de autenticación disponibles para las entidades de servicio: autenticación basada en contraseña (secreto de aplicación) y autenticación basada en certificados. Se recomienda usar un certificado, pero también puede crear un secreto de aplicación.
Opción 1: Carga de un certificado
Puede usar un certificado existente si lo tiene. Si quiere, puede crear un certificado autofirmado con fines de prueba únicamente. Para crear un certificado autofirmado, abra PowerShell y ejecute New-SelfSignedCertificate con los parámetros siguientes para crear el certificado en el almacén de certificados del usuario en su equipo:
$cert=New-SelfSignedCertificate -Subject "CN=DaemonConsoleCert" -CertStoreLocation "Cert:\CurrentUser\My" -KeyExportPolicy Exportable -KeySpec Signature
Exporte este certificado a un archivo con el complemento MMC Administrar certificado de usuario accesible desde el Panel de control de Windows.
Seleccione Ejecutar en el menú Inicio y, a continuación, escriba certmgr.msc.
Aparece la herramienta Administrador de certificados para el usuario actual.
Para ver los certificados, en Certificados - usuario actual en el panel izquierdo, expanda el directorio Personal.
Haga clic con el botón derecho en el certificado que ha creado y seleccione Todas las tareas->Exportar.
Siga el Asistente para exportar certificados. No exporte la clave privada ni realice exportaciones a un archivo .CER.
Para cargar el certificado:
Seleccione Azure Active Directory.
En Registros de aplicaciones, en Azure AD, seleccione su aplicación.
Seleccione Certificados y secretos.
Seleccione Certificados>Cargar certificado y seleccione el certificado (uno existente o el certificado autofirmado que ha exportado).
Seleccione Agregar.
Después de registrar el certificado con la aplicación en el portal de registro de aplicación, habilite el código de la aplicación cliente para usar el certificado.
Opción 2: Creación de un secreto de aplicación
Si decide no usar un certificado, puede crear un secreto de aplicación nuevo.
Seleccione Azure Active Directory.
En Registros de aplicaciones, en Azure AD, seleccione su aplicación.
Seleccione Certificados y secretos.
Seleccione Secretos de cliente -> Nuevo secreto de cliente.
Proporcione una descripción y duración del secreto. Cuando haya terminado, seleccione Agregar.
Después de guardar el secreto de cliente, se muestra el valor del mismo. Copie este valor porque no podrá recuperar la clave más adelante. Deberá proporcionar el valor de la clave junto con el identificador de la aplicación para iniciar sesión como la aplicación. Guarde el valor de clave donde la aplicación pueda recuperarlo.
Configuración de directivas de acceso sobre los recursos
Puede que tenga que configurar permisos adicionales para los recursos a los que la aplicación tiene que acceder. Por ejemplo, también debe actualizar las directivas de acceso de un almacén de claves para proporcionar a la aplicación acceso a las claves, los secretos o los certificados.
- En Azure Portal, vaya al almacén de claves y seleccione Directivas de acceso.
- Seleccione Agregar directiva de acceso y, luego, seleccione la clave, el secreto y los permisos de certificado que quiere conceder a la aplicación. Seleccione la entidad de servicio que creó anteriormente.
- Seleccione Agregar para agregar la directiva de acceso y, luego, Guardar para confirmar los cambios.
Pasos siguientes
- Aprenda a usar Azure PowerShell o la CLI de Azure para crear una entidad de servicio.
- Para obtener información sobre cómo especificar directivas de seguridad, consulte Control de acceso basado en roles de Azure (RBAC de Azure).
- Para obtener una lista de las acciones que puede conceder o denegar a los usuarios, consulte Operaciones del proveedor de recursos de Azure Resource Manager.
- Para obtener información sobre cómo trabajar con registros de aplicaciones mediante Microsoft Graph, vea la referencia de la API de aplicaciones.