Esta página se aplica a Apigee y Apigee Hybrid.
Consulta la documentación de
Apigee Edge.
Usar tokens OAuth de terceros
Consulta Usar tokens OAuth de terceros.
Designar varios URIs de redirección
Cuando se usa el tipo de concesión de código de autorización, se debe especificar un URI de redirección al registrar la aplicación de desarrollador. El URI de redirección especifica el URI de una aplicación designada para recibir un código de autorización en nombre de la aplicación cliente. El cliente debe enviar este URI a Apigee al solicitar códigos y tokens de autorización, y el parámetro redirect_uri
debe coincidir con el registrado. Consulta también Obtener tokens de OAuth 2.0.
Por ejemplo:
https://mydomain.com/authorize?\ client_id=123456&\ response_type=code&\ redirect_uri=https%3A%2F%2Fmydomain.com%2Fcallback&scope=scope1%20scope2&state=abc
Hay un caso práctico para especificar varios URIs de redirección en una sola aplicación proxy. Por ejemplo, puede que quieras autenticar varios dominios. Por ejemplo:
https://mydomain.com/callback
https://mydomain.uk/callback
https://mydomain.ja/callback
Para especificar varios URIs de redirección en la aplicación de desarrollador, añádelos como una lista separada por comas en el campo URL de retrollamada de la interfaz de usuario de la aplicación de desarrollador. Por ejemplo:
https://mydomain.com/callback,https://mydomain.uk/callback,https://mydomain.ja/callback
Tenga en cuenta que la solicitud /authorize
solo debe incluir un URI en el parámetro redirect_uri
.
La solicitud se completará correctamente siempre que el URI de redirección coincida con uno de los URIs especificados en el campo URL de retrollamada de la interfaz de usuario de la aplicación para desarrolladores.
Cambiar el comportamiento de devolución predeterminado de una operación GenerateAuthCode
De forma predeterminada, la operación GenerateAuthCode de la política OAuthv2 devuelve una 302
redirección a la
URI de redirección con un parámetro de consulta ?code
que contiene el código de autorización.
En algunos casos, puede que quieras cambiar este comportamiento. Por ejemplo, puede devolver una respuesta 200
con un JSON estructurado que contenga el código.
Una forma de llevar a cabo este caso práctico es asignar el valor false
a la propiedad GenerateResponse de la política OAuthV2.
Usa la política ExtractVariable para obtener el valor del código de autorización de la variable
oauthv2authcode.{policy_name}.code
. Después, puedes usar la política AssignMessage para devolver el código en una carga útil JSON con el estado 200.
Auditoría del consentimiento de los usuarios finales de la aplicación
Es posible que tengas que verificar que un usuario final de una aplicación ha autorizado una aplicación. Para ello, puedes usar la API Audit de Apigee.
Ejemplo de OAuth saliente
Consulta el ejemplo outbound-oauth en el repositorio api-platform-samples de Apigee en GitHub. Puedes clonar la muestra, implementarla y ejecutarla. En este ejemplo se usa la API Translator de Microsoft Azure para traducir tuits. Para ello, hace una llamada saliente para obtener un token de acceso de OAuth y, a continuación, almacena en caché el token mediante las políticas de almacenamiento en caché de los servicios de la API, reutilizando el token almacenado en caché cada vez que se hace una llamada saliente. También incluye una aplicación de navegador de demostración que se usa para invocar el proxy de la API.