Descripción general de la autenticación externa de IdP

La IU de Edge y la API de Management de Edge funcionan realizando solicitudes al servidor de Edge Management, en el que el servidor de administración admite los siguientes tipos de autenticación:

  • Autenticación básica: Accede a la IU de Edge o realiza solicitudes a la API de administración de Edge pasando tu nombre de usuario y contraseña.
  • OAuth2: Intercambia tus credenciales de autenticación básica de Edge por un token de acceso y un token de actualización de OAuth2. Realiza llamadas a la API de Management de Edge pasando el token de acceso de OAuth2 en el encabezado Bearer de una llamada a la API.

Edge admite el uso de los siguientes proveedores de identidad (IDP) externos para la autenticación:

  • Lenguaje de marcado para confirmaciones de seguridad (SAML) 2.0: Genera tokens de acceso de OAuth a partir de aserciones de SAML que devuelve un proveedor de identidad de SAML.
  • Protocolo ligero de acceso a directorios (LDAP): Usa los métodos de autenticación de búsqueda y vinculación o vinculación simple de LDAP para generar tokens de acceso de OAuth.

Los IdP de SAML y LDAP admiten un entorno de inicio de sesión único (SSO). Si usas un IDP externo con Edge, puedes admitir el SSO para la IU y la API de Edge, además de cualquier otro servicio que proporciones y que también admita tu IDP externo.

Las instrucciones de esta sección para habilitar la compatibilidad con IdP externos son diferentes de la autenticación externa de las siguientes maneras:

  • En esta sección, se agrega compatibilidad con el SSO.
  • Esta sección está dirigida a los usuarios de la IU de Edge (no de la IU clásica).
  • Esta sección solo es compatible con la versión 4.19.06 y posteriores

Acerca del SSO de Apigee

Para admitir SAML o LDAP en Edge, instala apigee-sso, el módulo de SSO de Apigee. En la siguiente imagen, se muestra el SSO de Apigee en una instalación de Edge para la nube privada:

Uso de puertos para el SSO de Apigee

Puedes instalar el módulo de SSO de Apigee en el mismo nodo que la IU de Edge y el servidor de administración, o en su propio nodo. Asegúrate de que el SSO de Apigee tenga acceso al servidor de administración a través del puerto 8080.

El puerto 9099 debe estar abierto en el nodo de SSO de Apigee para admitir el acceso al SSO de Apigee desde un navegador, desde el IdP de SAML o LDAP externo, y desde el servidor de administración y la IU de Edge. Como parte de la configuración del SSO de Apigee, puedes especificar que la conexión externa use HTTP o el protocolo HTTPS encriptado.

El SSO de Apigee usa una base de datos de Postgres a la que se puede acceder en el puerto 5432 del nodo de Postgres. Por lo general, puedes usar el mismo servidor de Postgres que instalaste con Edge, ya sea un servidor de Postgres independiente o dos servidores de Postgres configurados en modo principal/en espera. Si la carga en tu servidor de Postgres es alta, también puedes optar por crear un nodo de Postgres independiente solo para el SSO de Apigee.

Se agregó compatibilidad con OAuth2 en Edge para nube privada

Como se mencionó antes, la implementación de SAML en Edge se basa en tokens de acceso de OAuth2.Por lo tanto, se agregó compatibilidad con OAuth2 a Edge para la nube privada. Para obtener más información, consulta Introducción a OAuth 2.0.

Acerca de SAML

La autenticación de SAML ofrece varias ventajas. Si utiliza SAML, puede hacer lo siguiente:

  • Toma el control total de la administración de usuarios. Cuando los usuarios abandonan tu organización y se desaprovisionan de forma centralizada, se les deniega automáticamente el acceso a Edge.
  • Controla cómo se autentican los usuarios para acceder a Edge. Puedes elegir diferentes tipos de autenticación para diferentes organizaciones de Edge.
  • Controlar las políticas de autenticación Es posible que tu proveedor de SAML admita políticas de autenticación que se ajusten mejor a tus estándares empresariales.
  • Puedes supervisar los accesos, los cierres de sesión, los intentos de acceso fallidos y las actividades de alto riesgo en tu implementación de Edge.

Con SAML habilitado, el acceso a la IU de Edge y a la API de Management de Edge usa tokens de acceso de OAuth2. Estos tokens los genera el módulo de SSO de Apigee, que acepta las aserciones de SAML que devuelve tu IdP.

Una vez que se genera a partir de una aserción de SAML, el token de OAuth es válido durante 30 minutos y el token de actualización es válido durante 24 horas. Es posible que tu entorno de desarrollo admita la automatización de tareas de desarrollo comunes, como la automatización de pruebas o la integración continua/implementación continua (CI/CD), que requieren tokens con una duración más larga. Consulta Usa SAML con tareas automatizadas para obtener información sobre cómo crear tokens especiales para tareas automatizadas.

Acerca de LDAP

El Protocolo ligero de acceso a directorios (LDAP) es un protocolo de aplicación abierto y estándar de la industria para acceder a servicios de información de directorios distribuidos y mantenerlos. Los servicios de directorio pueden proporcionar cualquier conjunto organizado de registros, a menudo con una estructura jerárquica, como un directorio de correo electrónico corporativo.

La autenticación de LDAP en el SSO de Apigee usa el módulo de LDAP de Spring Security. Como resultado, los métodos de autenticación y las opciones de configuración para la compatibilidad con LDAP del SSO de Apigee se correlacionan directamente con los que se encuentran en LDAP de Spring Security.

LDAP con Edge para la nube privada admite los siguientes métodos de autenticación en un servidor compatible con LDAP:

  • Búsqueda y vinculación (vinculación indirecta)
  • Vinculación simple (vinculación directa)

El SSO de Apigee intenta recuperar la dirección de correo electrónico del usuario y actualizar su registro de usuario interno con ella para que haya una dirección de correo electrónico actual en el archivo, ya que Edge usa este correo electrónico para fines de autorización.

URLs de la IU y la API de Edge

La URL que usas para acceder a la IU de Edge y a la API de Management de Edge es la misma que usabas antes de habilitar SAML o LDAP. Para la IU de Edge:

http://edge_UI_IP_DNS:9000
https://edge_UI_IP_DNS:9000

En el ejemplo anterior, edge_UI_IP_DNS es la dirección IP o el nombre de DNS de la máquina que aloja la IU de Edge. Como parte de la configuración de la IU de Edge, puedes especificar que la conexión use HTTP o el protocolo HTTPS encriptado.

Para la API de administración de Edge, haz lo siguiente:

http://ms_IP_DNS:8080/v1
https://ms_IP_DNS:8080/v1

Donde ms_IP_DNS es la dirección IP o el nombre de DNS del servidor de administración. Como parte de la configuración de la API, puedes especificar que la conexión use HTTP o el protocolo HTTPS encriptado.

Configura TLS en el SSO de Apigee

De forma predeterminada, la conexión al SSO de Apigee usa HTTP en el puerto 9099 en el nodo que aloja apigee-sso, el módulo de SSO de Apigee. En apigee-sso, se incluye una instancia de Tomcat que controla las solicitudes HTTP y HTTPS.

El SSO de Apigee y Tomcat admiten tres modos de conexión:

  • PREDETERMINADO: La configuración predeterminada admite solicitudes HTTP en el puerto 9099.
  • SSL_TERMINATION: Se habilitó el acceso de TLS al SSO de Apigee en el puerto que elijas. Debes especificar una clave y un certificado TLS para este modo.
  • SSL_PROXY: Configura el SSO de Apigee en modo de proxy, lo que significa que instalaste un balanceador de cargas frente a apigee-sso y finalizaste TLS en el balanceador de cargas. Puedes especificar el puerto que se usa en apigee-sso para las solicitudes del balanceador de cargas.

Habilita la compatibilidad con IdP externos para el portal

Después de habilitar la compatibilidad con el IdP externo para Edge, puedes habilitarla de forma opcional para el portal de servicios para desarrolladores de Apigee (o simplemente, el portal). El portal admite la autenticación de SAML y LDAP cuando se realizan solicitudes a Edge. Ten en cuenta que esto es diferente de la autenticación de SAML y LDAP para el acceso de desarrolladores al portal. La autenticación de IdP externo para el acceso de desarrolladores se configura por separado. Consulta Configura el portal para usar IdP para obtener más información.

Como parte de la configuración del portal, debes especificar la URL del módulo de SSO de Apigee que instalaste con Edge:

El flujo de solicitud/respuesta con tokens