Configura el portal para usar IdP externos

El portal de servicios para desarrolladores de Apigee (o simplemente el portal) funciona como cliente de Apigee Edge. Eso significa que el portal no funcionar como un sistema independiente. Gran parte de la información que usa el portal almacenados en Edge. Cuando es necesario, el portal solicita recuperar información de Edge o para enviar información a Edge.

El portal siempre está asociado a una sola organización de Edge. Cuando configuras puedes especificar las credenciales de autenticación básicas (nombre de usuario y contraseña) para un de la organización que el portal usa para comunicarse con Edge.

Si eliges habilitar un IDP externo, como SAML o LDAP, para la autenticación perimetral, puedes configurar el portal para usar esa autenticación cuando se hacen solicitudes a Edge. Configura el portal para usar un IdP externo crea automáticamente una nueva cuenta de usuario de máquina en la organización de Edge en la que el portal luego usa para hacer solicitudes a Edge. Para obtener más información sobre los usuarios de máquinas, consulta Automatiza tareas para IdP externos.

La compatibilidad de IdP externo con el portal requiere que ya hayas instalado y configurado el Módulo de SSO de Apigee en el nodo del servidor de administración perimetral. El proceso general para habilitar una red El IdP del portal es el siguiente:

  1. Instala el módulo de SSO de Apigee, como se describe en Instala el SSO de Apigee para obtener alta disponibilidad.
  2. Instala el portal y asegúrate de que la instalación funcione correctamente. Consulta Instala el portal.
  3. Configura SAML o LDAP en el portal como se describe en esta sección.
  4. (Opcional) Inhabilita la autenticación básica en Edge, como se describe en Inhabilita la autenticación básica en Edge.

Crea un usuario de máquina para el portal

Cuando se habilita un IdP externo, Edge admite la generación automática de tokens OAuth2 mediante el uso de usuarios de máquinas. Un usuario de máquina puede obtener tokens OAuth2 sin tener que especificar un contraseña. Esto significa que puedes automatizar completamente el proceso de obtención y actualización de OAuth2. tokens.

El proceso de configuración del IdP para el portal crea automáticamente un usuario de máquina en el organización asociada con el portal. Luego, el portal usa esta cuenta de usuario de máquina para conectarte a Edge. Para obtener más información sobre los usuarios de máquinas, consulta Automatizar para los IdP externos.

Información sobre la autenticación para desarrolladores del portal cuentas

Cuando configuras el portal para que use un IdP externo, habilita el portal para que use SAML o LDAP para autenticar con Edge para que el portal pueda hacer solicitudes a Edge. Sin embargo, el portal también admite un tipo de usuario llamado desarrolladores.

Los desarrolladores conforman la comunidad de usuarios que compilan apps usando tus APIs. Desarrolladores de apps usar el portal para obtener información sobre tus APIs, registrar apps que las usen, interactuar con la comunidad de desarrolladores y ver información estadística sobre el uso de la aplicación en una o un panel dinámico más robusto.

Cuando un desarrollador accede al portal, este es el responsable de la autenticación del desarrollador y la aplicación de permisos basados en roles. El portal continúa usar la autenticación básica con los desarrolladores incluso después de habilitar la autenticación de IdP entre las portal y Edge. Para obtener más información, consulta Comunicación entre el portal y Edge.

También es posible configurar el portal para que use SAML o LDAP para autenticar a los desarrolladores. Para un ejemplo sobre cómo habilitar SAML con módulos de Drupal de terceros, consulta Integración de SSO a través de SAML con el portal para desarrolladores.

Archivo de configuración del IdP para el portal

Si quieres configurar un IdP externo para el portal, debes crear un archivo de configuración que defina la configuración del portal.

En el siguiente ejemplo, se muestra un archivo de configuración de portal compatible con IdP:

# IP address of Edge Management Server and the node on which the Apigee SSO module is installed.
IP1=22.222.22.222

# URL of Edge management API.
MGMT_URL=http://$IP1:8080/v1

# Organization associated with the portal.
EDGE_ORG=myorg

# Information about the Apigee SSO module (apigee-sso).
# Externally accessible IP or DNS of apigee-sso.
SSO_PUBLIC_URL_HOSTNAME=$IP1
SSO_PUBLIC_URL_PORT=9099
# Default is http. Set to https if you enabled TLS on apigee-sso.
SSO_PUBLIC_URL_SCHEME=http

# SSO admin credentials as set when you installed apigee-sso.
SSO_ADMIN_NAME=ssoadmin
SSO_ADMIN_SECRET=Secret123

# Enables or disables external IDP support.
# Default is "n", which disables external IDP support.
# Change it to "y" to enable external IDs support.
DEVPORTAL_SSO_ENABLED=y

# The name of the OAuth2 client used to connect to apigee-sso.
# The default client name is portalcli.
PORTALCLI_SSO_CLIENT_NAME=portalcli
# OAuth client password using uppercase, lowercase, number, and special characters.
PORTALCLI_SSO_CLIENT_SECRET=Abcdefg@1

# Email address and user info for the machine user created in the Edge org specified
# above by EDGE_ORG.
# This account is used by the portal to make requests to Edge.
# Add this email as an org admin before configuring the portal to use an external IDP.
DEVPORTAL_ADMIN_EMAIL=DevPortal_SAML@google.com
DEVPORTAL_ADMIN_FIRSTNAME=DevPortal
DEVPORTAL_ADMIN_LASTNAME=SAMLAdmin
DEVPORTAL_ADMIN_PWD=Abcdefg@1

# If set, the existing portal OAuth client is deleted and a new one is created.
# The default value is "n".
# Set to "y" when you configure the external IDP and change the value of
# any of the PORTALCLI_* properties.
PORTALCLI_SSO_CLIENT_OVERWRITE=y

Para habilitar la compatibilidad con IdP externo en el portal, haz lo siguiente:

  1. En la IU de Edge, agrega el usuario de máquina especificado por DEVPORTAL_ADMIN_EMAIL al organización asociada con el portal como Administrador de la organización.
  2. Ejecuta el siguiente comando para configurar el IdP externo en el portal:
    /opt/apigee/apigee-service/bin/apigee-service apigee-drupal-devportal configure-sso -f configFile

    En el ejemplo anterior, configFile es el archivo de configuración descrito anteriormente.

  3. Accede al portal como administrador.
  4. En el menú principal de Drupal, selecciona Configuración > Portal para desarrolladores. El portal configuración de la VM, incluida la configuración del IdP externo:

    Ten en cuenta lo siguiente:

    • Está marcada la casilla Esta organización está habilitada para SAML.
    • El extremo del módulo de SSO de Apigee está completado
    • Los campos Clave de API y Secreto de consumidor de la del cliente OAuth del portal de Firebase se hayan completado
    • El mensaje Connection Successful aparecerá en la sección Test Botón Conexión.
  5. Haz clic en el botón Probar conexión para volver a probar la conexión en en cualquier momento.

Para cambiar estos valores más adelante, actualiza el archivo de configuración y ejecuta este procedimiento de nuevo.

Inhabilita un IdP externo en el portal

Si decides inhabilitar tu IdP externo para las comunicaciones entre el portal y Edge, el portal ya no podrá hacer solicitudes a Edge. Los desarrolladores pueden acceder a la pero no podrán ver el producto ni crear apps.

Para inhabilitar la autenticación de IdP externo en el portal, haz lo siguiente:

  1. Abre el archivo de configuración que usaste antes para habilitar el IdP externo.
  2. Establece el valor de la propiedad DEVPORTAL_SSO_ENABLED en n, ya que que se muestra a continuación:
    DEVPORTAL_SSO_ENABLED=n
  3. Para configurar el portal, ejecuta el siguiente comando:
    /opt/apigee/apigee-service/bin/apigee-service apigee-drupal-devportal configure-sso -f configFile