Acerca de acurl y get_token

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

Apigee proporciona las siguientes utilidades para generar y pasar tokens de acceso y actualización de OAuth2. Usa estos tokens para autenticarte en las llamadas a la API de Edge con OAuth (incluidos los flujos de trabajo de SAML y LDAP):

  • acurl(1): Proporciona un wrapper útil alrededor de un comando curl estándar. Crea solicitudes HTTP a la API de Edge, obtiene tokens de acceso y actualización de get_token y pasa el token de acceso a la API de Edge.
  • get_token(1): Intercambia tus credenciales de Apigee por tokens de acceso y actualización que puedes usar para llamar a la API de Edge.

Ambas utilidades cambian las credenciales de tu cuenta de Apigee (nombre de usuario y contraseña o contraseña) por tokens de OAuth2.

Los tokens creados por las utilidades de Apigee cumplen con la especificación del marco de trabajo de autorización de OAuth 2.0.

El uso de las utilidades de Apigee para obtener tokens o acceder al servidor de autenticación de las API de Edge es opcional. Puedes implementar tus propios esquemas para generar tokens de acceso de OAuth2 y enviarlos a la API de Edge.

Instala acurl y get_token

Apigee proporciona un archivo ZIP que contiene acurl(1), get_token(1) y una secuencia de comandos de instalación.

Para instalar acurl y get_token, sigue estos pasos:

  1. Crea un directorio de instalación en tu máquina o usa el directorio predeterminado usr/local/bin.
  2. Descarga el archivo ZIP de instalación de Apigee:
    curl https://login.apigee.com/resources/scripts/sso-cli/ssocli-bundle.zip -O
  3. Descomprime el archivo descargado.
  4. Ejecuta la secuencia de comandos de instalación:
    sudo ./install -b /usr/local/bin

    La opción -b especifica la ubicación de los archivos ejecutables. Si no especificas esta opción, la secuencia de comandos de instalación instalará las utilidades en /usr/local/bin.

  5. Prueba las instalaciones:
        acurl -h
        get_token -h

    Si la instalación es exitosa, estos comandos muestran texto de ayuda para las utilidades.

Vencimiento del token

acurl y get_token generan tokens con las siguientes duraciones:

  • Los tokens de acceso vencen en 12 horas.
  • Los tokens de actualización vencen en 30 días.

Como resultado, una vez que hayas realizado una llamada a la API con acurl o get_token, puedes seguir usando el par de tokens durante 30 días. Después del vencimiento, debes volver a ingresar tus credenciales y obtener tokens nuevos.

Configura el extremo de SSO

Antes de realizar tu primera llamada, debes configurar el extremo del servidor de autorización para la API de Edge que deseas usar con acurl y get_token.

Desde la terminal, establece la variable de entorno SSO_LOGIN_URL en el extremo del servidor de autorización. Por ejemplo:

  • Para clientes de Cloud sin zona:
    export SSO_LOGIN_URL=https://login.apigee.com
  • Para clientes de Cloud con zona:
    export SSO_LOGIN_URL=https://zone_name.login.apigee.com
  • Si eres cliente de la nube privada, comunícate con tu administrador para obtener el extremo de SSO adecuado.

Usa una contraseña de un solo uso (obligatoria para SAML)

Cuando realizas una llamada a la API con acurl o get_token, debes autenticarte en la utilidad para recibir un par de tokens. Para ello, pasa el nombre de usuario, la contraseña y un código MFA de tu cuenta de Apigee. Sin embargo, si usas un IdP de SAML o no quieres usar tu contraseña, puedes obtener una contraseña de código de uso único.

Cómo obtener una contraseña de un solo uso

  1. Ingresa la siguiente URL en un navegador:
    • Para clientes de Cloud sin zona:
      https://login.apigee.com/passcode
    • Para clientes de Cloud con zona:
      https://zone_name.login.apigee.com/passcode
    • Si eres cliente de la nube privada, comunícate con tu administrador para obtener el extremo de SSO adecuado.
  2. Acceda a su cuenta de Apigee.
  3. Copia la contraseña de 6 caracteres.
  4. Usa acurl o get_token con la opción -p y pasa la contraseña, como en el siguiente ejemplo:
    get_token -p 1a2b3c

Ver tus tokens

Cuando ejecutas acurl o get_token correctamente, las utilidades crean un archivo de datos en ~/.sso-cli que contiene los tokens y otros metadatos.

Para ver los tokens, puedes usar un comando como el siguiente:

get_token -v

Este comando muestra las reclamaciones de token decodificados, por ejemplo:

Decoded token claims:
 {
  "jti": "8018507e-9f34-4a90-bf97-ff226a06b19b",
  "sub": "858217a9-01a1-4111-8525-75ca555f5d5c",
  "scope": [
    "scim.emails.read",
    "scim.me",
    "openid",
    "password.write",
    "approvals.me",
    "scim.ids.read",
    "oauth.approvals"
          ],
  "client_id": "edgecli",
  "cid": "edgecli",
  "azp": "edgecli",
  "grant_type": "password",
  "user_id": "858217a9-01a1-4111-8525-75ca555f5d5c",
  "origin": "usergrid",
  "user_name": "myusername@google.com",
  "email": "myusername@google.com",
  "auth_time": 1597444772,
  "al": 0,
  "rev_sig": "6271c527",
  "iat": 1597444772,
  "exp": 1597487972,
  "iss": "https://login.apigee.com",
  "zid": "uaa",
  "aud": [
    "edgecli",
    "scim.emails",
    "scim",
    "openid",
    "password",
    "approvals",
    "scim.ids",
    "oauth"
        ]
    }
Current timestamp: 1597444983
Existing access token is still valid

(1) Copyright 2023 Google LLC
Las herramientas acurl y get_token están disponibles como “Software” según el acuerdo que rige tu uso de Google Cloud Platform, incluidas las Condiciones Específicas del Servicio disponibles en https://cloud.google.com/terms/service-terms.