Configura el portal para usar SAML y comunicarte con Edge

Edge para nube privada v4.19.01

El portal de servicios para desarrolladores de Apigee (o simplemente, el portal) actúa como un cliente de Apigee Edge. Esto significa que el portal no funciona como un sistema independiente. En cambio, gran parte de la información que usa el portal se almacena en Edge. Cuando es necesario, el portal realiza una solicitud para recuperar información de Edge o enviar información a Edge.

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

Si eliges habilitar SAML para la autenticación de Edge, puedes configurar el portal para que use la autenticación de SAML cuando realice solicitudes a Edge. Cuando configuras el portal para que use SAML, se crea automáticamente una nueva cuenta de usuario de máquina en la organización de Edge que el portal usa para realizar solicitudes a Edge. Para obtener más información sobre los usuarios de máquinas, consulta Usa SAML con tareas automatizadas.

La compatibilidad con SAML para el portal requiere que ya hayas instalado y configurado el módulo de SSO de Edge en el nodo del servidor de administración de Edge. El proceso general para habilitar SAML en el portal es el siguiente:

  1. Configura SAML en Edge como se describe en Instalación y configuración de SAML para Edge. Nota: La autenticación básica aún debe estar habilitada en Edge para instalar el portal. No inhabilites la autenticación básica en Edge hasta que hayas configurado el portal para usar SAML.
  2. Instala el portal y asegúrate de que la instalación funcione correctamente. Consulta Instala el portal de Edge para la nube privada.
  3. Configura SAML en el portal.
  4. Ahora puedes inhabilitar la autenticación básica en Edge.

Crea un usuario de máquina para el portal

Cuando SAML está habilitado, Edge admite la generación automática de tokens de OAuth2 mediante el uso de usuarios de máquina. Un usuario de máquina puede obtener tokens de OAuth2 sin tener que especificar una contraseña. Esto significa que puedes automatizar por completo el proceso de obtención y actualización de tokens de OAuth2.

El proceso de configuración de SAML para el portal crea automáticamente un usuario de máquina en la organización asociada con el portal. Luego, el portal usa esta cuenta de usuario de máquina para conectarse a Edge. Para obtener más información sobre los usuarios de máquinas, consulta Usa SAML con tareas automatizadas.

Acerca de la autenticación para las cuentas de desarrollador del portal

Cuando configuras el portal para que use SAML, habilitas el portal para que use SAML para autenticarse con Edge, de modo que el portal pueda realizar solicitudes a Edge. Sin embargo, el portal también admite un tipo de usuario llamado desarrollador.

Los desarrolladores conforman la comunidad de usuarios que crean apps con tus APIs. Los desarrolladores de apps usan 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 sus apps en un panel.

Cuando un desarrollador accede al portal, este es responsable de autenticarlo y de aplicar los permisos basados en roles. El portal sigue usando la autenticación básica con los desarrolladores, incluso después de habilitar SAML entre el 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 para autenticar a los desarrolladores. Para ver un ejemplo de 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.

Configura SAML en el portal para comunicarte con Edge

Para configurar SAML en el portal, debes crear un archivo de configuración para el portal:

# IP address of Edge Management Server and apigee-sso node.
IP1=22.222.22.222

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

# Org associated with the portal.
EDGE_ORG=myorg

# Information about 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

# Default is "n" to disable SAML support.
DEVPORTAL_SSO_ENABLED=y

# The name of the OAuth 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 chars. 
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 SAML. 
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 new one is created.
# The default value is "n".
# Set to "y" when you configure SAML and change the value of 
# any of the PORTALCLI_* properties.
PORTALCLI_SSO_CLIENT_OVERWRITE=y

Para habilitar la compatibilidad con SAML en el portal, sigue estos pasos:

  1. En la IU de Edge, agrega el usuario del sistema especificado por DEVPORTAL_ADMIN_EMAIL a la organización asociada con el portal como administrador de la organización.
  2. Ejecuta el siguiente comando para configurar SAML en el portal:
    /opt/apigee/apigee-service/bin/apigee-service apigee-drupal-devportal configure-sso -f samlConfigFile

    Donde samlConfigFile es el archivo de configuración de SAML.

  3. Accede al portal como administrador.
  4. En el menú principal de Drupal, selecciona Configuration > Dev Portal. Aparecerá la pantalla de configuración del portal, incluida la configuración de SAML:

    Ten en cuenta que la casilla Esta organización tiene habilitado SAML está marcada, el extremo para el módulo de SSO de Edge está completo, los campos Clave de API y Secreto del consumidor para el cliente de OAuth del portal están completos y el mensaje Conexión correcta aparece debajo del botón Probar conexión.

  5. Puedes presionar el botón Probar conexión para volver a probar la conexión en cualquier momento.

Para cambiar estos valores más adelante, actualiza el archivo de configuración y vuelve a ejecutar el comando.

Inhabilita SAML en el portal

Si eliges inhabilitar SAML para las comunicaciones entre el portal y Edge, el portal ya no podrá realizar solicitudes a Edge. Los desarrolladores pueden acceder al portal, pero no podrán ver el producto ni crear apps.

Para inhabilitar SAML en el portal, sigue estos pasos:

  1. Edita el archivo de configuración que usaste para configurar SAM y establece lo siguiente:
    DEVPORTAL_SSO_ENABLED=n
  2. Configura el portal:
    /opt/apigee/apigee-service/bin/apigee-service apigee-drupal-devportal configure-sso -f configFile