Perfil de Seguridad de API OAuth 2.0 de Dos Patas de Azure AD
Introducción
Importante
Azure Active Directory (Azure AD) ahora se conoce como Microsoft Entra ID.
Dentro de un perfil de seguridad, puede configurar Microsoft Azure Active Directory (Azure AD) como proveedor de identidad OAuth 2.0 para proporcionar a los consumidores de API acceso a una API mediante la autenticación de Azure AD.
Esta página muestra cómo configurar y usar la autenticación de Azure AD con una API Jitterbit personalizada, OData o proxy de API siguiendo estos pasos:
- Configurar Azure AD como proveedor de identidad
Configure la instancia de Azure AD como proveedor de identidad para usarla como entrada para configurar un perfil de seguridad en API Manager. - Otorgar permisos de API a Harmony
Otorgue permisos a Harmony para usar las APIs de Azure AD con la aplicación OAuth 2.0 que creó en el paso anterior. - Configurar un perfil de seguridad en API Manager
Configure Azure AD como proveedor de identidad en API Manager. - Asignar un perfil de seguridad en API Manager
Asigne el perfil de seguridad a una o más APIs Jitterbit Custom, OData o Proxy. - Acceder a una API con autenticación de Azure AD
Los consumidores de API pueden usar la autenticación de Azure AD para consumir las APIs Jitterbit Custom, OData o Proxy a las que está asignado el perfil de seguridad.
Para obtener información adicional, consulte Microsoft Configurar una aplicación OpenID Connect OAuth desde la galería de aplicaciones Microsoft Entra documentación.
Para la configuración del perfil de seguridad OAuth de 3 patas de Azure AD, consulte Perfil de seguridad API OAuth 2.0 de 3 patas de Azure AD.
Requisitos Previos
Se requiere la edición Microsoft Azure AD Premium P1 para configurar y usar Azure AD como proveedor de identidad.
1. Configurar Azure AD Como Proveedor de Identidad
Siga estos pasos para configurar una aplicación OAuth 2.0 en el portal de Microsoft Azure y obtener el ID de cliente, el secreto de cliente y el ID de directorio necesarios para configurar Azure AD como proveedor de identidad para un perfil de seguridad:
-
Inicie sesión en el portal de Microsoft Azure.
-
En el portal de Microsoft Azure, vaya a Registros de aplicaciones y haga clic en Nuevo registro:
-
En la pantalla Registrar una aplicación, especifique los detalles iniciales de la aplicación:
- Ingrese un Nombre. Por ejemplo, API de Jitterbit API Manager.
- En Tipos de cuenta admitidos, seleccione la opción adecuada para su situación.
-
Después de hacer clic en Registrar, en la pantalla Descripción general de la nueva aplicación, se muestran el ID de la aplicación (cliente) y el ID del directorio (inquilino). Consérvelos para usarlos más adelante, ya que serán necesarios al configurar el perfil de seguridad en API Manager:
-
En la categoría Administrar a la izquierda, seleccione Certificados y secretos. Luego, en Secretos de cliente, haga clic en Nuevo secreto de cliente:
-
Proporcione una Descripción y establezca el secreto en Nunca caduque. Luego haga clic en Agregar:
-
Utilice el icono Copiar al portapapeles para copiar el nuevo secreto del cliente. Consérvelo para usarlo más adelante, ya que será necesario al configurar el perfil de seguridad en API Manager.
2. Otorgar Permisos de API a Harmony
Siga estos pasos para otorgar permisos a Harmony para usar las APIs de Azure AD con la aplicación OAuth 2.0 que creó en la sección Configurar Azure AD como proveedor de identidad. Si continúa desde la sección anterior, puede comenzar en el paso 3 a continuación.
-
Inicie sesión en el portal de Microsoft Azure.
-
En el portal de Microsoft Azure, vaya a Registros de aplicaciones y seleccione la aplicación OAuth 2.0 que creó en la sección Configurar Azure AD como proveedor de identidad (en el ejemplo, denominadas API de Jitterbit API Manager).
-
En la categoría Administrar a la izquierda, seleccione Permisos de API. Luego, en Permisos configurados, haz clic en Agregar un permiso:
-
En la pantalla Solicitar permisos de API, en la pestaña APIs de Microsoft, seleccione la API de Microsoft Graph:
-
En la pantalla Solicitar permisos de API, seleccione Permisos delegados:
-
Ahora se muestra la sección Seleccionar permisos. Dentro de él, seleccione estos permisos:
-
En Permisos de OpenId, seleccione offline_access, openid y profile:
-
En Usuario, seleccione Usuario.Leer:
-
-
Una vez que se hayan seleccionado estos permisos, en la parte inferior de la pantalla Solicitar permisos de API, haga clic en Agregar permisos.
-
Volverá a la pantalla Permisos API para la aplicación. En Permisos configurados, haga clic en Otorgar consentimiento de administrador para \<Directorio>:
-
Confirme el cuadro de diálogo para otorgar consentimiento para el directorio:
-
En Permisos configurados, la columna Estado ahora debería mostrar que se ha otorgado el consentimiento para cada permiso agregado:
-
Siga estas instrucciones adicionales Pasos para crear un alcance personalizado:
- Navegue hasta Exponer una API y haga clic en Agregar un alcance.
-
En el cuadro de diálogo Agregar un alcance, ingrese un Ámbito nombre, Nombre para mostrar del consentimiento del administrador, Descripción del consentimiento del administrador y complete la campos opcionales según lo desee. Haga clic en Agregar alcance:
-
En la categoría Administrar a la izquierda, seleccione Manifiesto. Asegurarse de que
accessTokenAcceptedVersion
se establece en2
y haga clic en Guardar:Precaución
Su token de autenticación no se validará si
accessTokenAcceptedVersion
no está configurado para2
.
3. Configure un Perfil de Seguridad en API Manager
Siga las instrucciones para Configurar un perfil de seguridad en Configuración del perfil de seguridad.
Precaución
El Nombre del perfil no debe contener espacios. Si el Nombre del perfil contiene espacios, recibirá un error al intentar acceder a una API utilizando ese perfil de seguridad. Azure AD devuelve un error similar a este:
The reply URL specified in the request does not match the reply URLs configured for the application.
Durante la configuración, seleccione OAuth 2.0 como Tipo de autenticación y Azure AD como Proveedor de OAuth:
Ingrese el alcance en el campo OAuth Scope. El nombre del alcance es <client_id>/.default
. La ID del cliente se obtuvo arriba en el paso 1.
El campo Dominios autorizados debe estar vacío:
Opcionalmente, ingrese el ID de cliente OAuth y el Secreto de cliente OAuth (para fines de prueba) obtenidos anteriormente en el paso 1:
Ingrese la audiencia, que es el ID de aplicación (ID de cliente) de su aplicación, asignado a su aplicación en Azure Portal como se describe anteriormente en el paso 1.
Edite la URL de descubrimiento de OpenID, la URL de autorización de OAuth, la URL del token de OAuth y la URL de información de usuario para reemplazar el ID del directorio de marcador de posición (yourDirectoryID
) con el ID de directorio obtenido anteriormente en el paso 1.
Una vez que se hayan completado los campos anteriores, haga clic en Probar para validar el token de autenticación.
4. Asigne un Perfil de Seguridad en API Manager
Para utilizar el perfil de seguridad con una API, siga las instrucciones para configurar una API Personalizada, Servicio OData, o proxy de API y seleccione el perfil de seguridad configurado con la autenticación Azure AD OAuth 2.0.
5. Acceda a una API con Autenticación de Azure AD
Una vez que haya guardado y publicado una API Personalizada, Servicio OData, o proxy de API, se puede acceder a su API mediante URL en la aplicación que llama a la API utilizando el método de autenticación configurado.
El uso de OAuth 2.0 de dos patas es un proceso de dos pasos:
- Genere un token de OAuth pasando el ID de cliente de Azure y el secreto de cliente obtenidos anteriormente en el paso 1 en una Solicitud de token de acceso a credenciales de cliente RFC6749 al nuevo enlace URL del token de OAuth de dos patas que se muestra en Perfiles de seguridad o obteniendo el token de OAuth directamente desde Azure AD.
- Envíe el token de OAuth en el encabezado de la API utilizando el tipo de token "portador" definido en RFC6750.
Para consumir la API, use el enlace Copiar URL y utilícelo dentro de la aplicación que realiza la llamada:
Si la API admite GET, también puede pegar la URL en un navegador web para consumir la API manualmente.
Cuando se utiliza Flujo OAuth de 2 vías, Pasarela de API recupera el token de acceso y la autenticación se realiza automáticamente.
Si la autenticación es exitosa, la carga útil esperada se muestra en el navegador web.