Información sobre los extremos de OAuth

Estás consultando la documentación de Apigee Edge.
Consulta la documentación de Apigee X.
Información

Para realizar su trabajo como servidor de autorización de OAuth2, Apigee Edge debe exponer extremos en los que los clientes pueden solicitar tokens y códigos de autenticación. En este tema, se ofrece una introducción rápida a estos extremos y se muestra cómo configurarlos en Edge.

¿Qué es un extremo de OAuth2?

Un extremo de OAuth2 es una URL a la que los clientes llaman para solicitar tokens OAuth (o códigos de autenticación). A continuación, se muestra una solicitud de ejemplo de un token de acceso:

$ curl -i -H 'ContentType: x-www-form-urlencoded' \
-X POST 'https://docs-test.apigee.net/oauth/client_credential/accesstoken' \
-d 'grant_type=client_credentials' \
-H 'Authorization: Basic c3FIOG9vSGV4VHo4QzAySVg5T1JvNnJoZ3ExaVNyQWw6WjRsanRKZG5lQk9qUE1BVQ'

En tu entorno de Apigee Edge, se requiere una política para manejar este tipo de solicitudes. Como se puede deducir de la solicitud, la política debe admitir el tipo de otorgamiento "credenciales de cliente", y la política debe ejecutarse en la ruta /oauth/client_credentials/accesstoken.

La política correcta en este caso es una política OAuthV2, configurada para ejecutarse en un flujo como se ilustra en el siguiente ejemplo (en el que el nombre de la política es GenerateAccessTokenClient):

        <Flow name="AccessTokenClientCredential">
            <Description/>
            <Request>
                <Step>
                    <FaultRules/>
                    <Name>GenerateAccessTokenClient</Name>
                </Step>
            </Request>
            <Response/>
            <Condition>(proxy.pathsuffix MatchesPath &quot;/accesstoken&quot;) and (request.verb = &quot;POST&quot;)</Condition>
        </Flow>

Si el cliente proporciona las credenciales correctas, la política genera y muestra un token; de lo contrario, muestra un error.

Ubica los extremos predeterminados

De forma predeterminada, Apigee agrega un proxy de extremo OAuth2 de ejemplo a cada organización nueva que crea. Si te fijas, encontrarás un proxy llamado oauth en tu organización.

Para encontrar este proxy, sigue estos pasos:

  1. Accede a la página Proxies de API como se describe a continuación.

    Conexión de integración

    Para acceder a la página Proxies de API con la IU de Edge, haz lo siguiente:

    1. Accede a apigee.com/edge.
    2. Selecciona Desarrollar > Proxies de API en la barra de navegación izquierda.
    3. Haz clic en Proxy.

    Versión clásica de Edge (nube privada)

    Para acceder a la página Proxies de API con la IU clásica de Edge, haz lo siguiente:

    1. Accede a http://ms-ip:9000, donde ms-ip es la dirección IP o el nombre de DNS del nodo del servidor de administración.
    2. Selecciona API > Proxies de API en la barra de navegación superior.
  2. En la lista de proxies, selecciona el que se llama oauth.
  3. En la página de descripción general del proxy, selecciona la pestaña Desarrollar para que aparezca el editor de proxy y examina las políticas y los flujos en el proxy.

Práctica recomendada: Crea tu propio proxy de extremo de OAuth2

El proxy oauth predeterminado es limitado: solo admite el tipo de otorgamiento de credenciales de cliente. Este proxy debe ser solo un ejemplo. Para producción, te recomendamos que crees un proxy que configure los extremos de OAuth2 que cumplan con tus requisitos.

Nota importante: Un proxy que define los extremos OAuth2 suele ser un proxy sin destino. El proxy actúa como un servicio que se ejecuta en el ProxyEndpoint y regresa directamente al cliente.

Temas relacionados

Solicita tokens de acceso y códigos de autorización