Instala y configura el SSO de Apigee

A partir de OPDK 4.54.00, se modernizó la arquitectura de SSO. El agente de identidad (Dex) ahora está integrado directamente en el componente apigee-openldap, lo que elimina la necesidad de instalar un módulo apigee-sso heredado independiente.

Para habilitar y configurar Apigee SSO, debes hacer lo siguiente:

  1. Crea un usuario de máquina para la IU de New Edge: Crea un usuario de máquina necesario para que la IU de New Edge invoque las APIs de administración.
  2. Configura las propiedades en el archivo de configuración común: Crea un solo archivo de configuración que contenga las propiedades requeridas por el servicio OpenLDAP (SSO) y la IU de New Edge.
  3. Crea una base de datos de SSO en Postgres: Crea una base de datos para SSO en la instancia de PostgreSQL de Apigee.
  4. Aplica las configuraciones de SSO en OpenLDAP: Aplica el archivo de configuración para iniciar el SSO de Apigee integrado en el nodo OpenLDAP.
  5. Configura la IU de New Edge: Actualiza las propiedades de la IU de New Edge para usar el nuevo SSO de Apigee.

Cada uno de estos pasos se describe en las siguientes secciones.

Crea un usuario de máquina para la IU

La IU de New Edge requiere un usuario de máquina para invocar las APIs de administración en el backend para ciertas operaciones. Para este propósito, se usa una secuencia de comandos preinstalada en el nodo apigee-openldap.

Obtén más información sobre la secuencia de comandos y los usuarios de máquinas en Cómo usar la secuencia de comandos apigee-machine-user.

Usa el siguiente comando en el nodo apigee-openldap para crear un usuario de máquina para la IU de New Edge y asegúrate de usar las mismas credenciales cuando definas la propiedad en el archivo de configuración en el paso siguiente.

 /opt/apigee/apigee-openldap/bin/apigee-machineuser.sh add -u ui-machine-user@apigee.com -p Secret123
 

Configura las propiedades en el archivo de configuración común

Antes de que puedas habilitar el SSO de Apigee y la IU de New Edge, debes definir un archivo de configuración común (por ejemplo, /opt/silent.conf). Puedes cambiar esta ruta de acceso y nombre de archivo según sea necesario para tu entorno.

Agrega las siguientes propiedades de configuración base a tu /opt/silent.conf:

# ==========================================
# SSO Enablement
# ==========================================
ENABLE_SSO=y

# ==========================================
# SSO Hostname/IP and Port config for Dex
# ==========================================
SSO_PUBLIC_URL_SCHEME=http
SSO_PUBLIC_URL_HOSTNAME=localhost
SSO_PUBLIC_URL_PORT=9099

# ==========================================
# Static Client UI credentials
# ==========================================
MANAGEMENT_UI_SSO_CLIENT_ID=unifiedui
MANAGEMENT_UI_SSO_CLIENT_SECRET=secret123

# ==========================================
# Management UI & SSO redirect URLs
# ==========================================
MANAGEMENT_UI_SCHEME=http
MANAGEMENT_UI_IP=localhost
MANAGEMENT_UI_PORT=3001

# ==========================================
# Management Server parameters (Required for SSO registration)
# ==========================================
MSIP=localhost
ADMIN_EMAIL=admin@apigee.com
APIGEE_ADMINPW=Secret123

# ==========================================
# Machine user for UI
# ==========================================
UI_MACHINE_USER=ui-machine-user@apigee.com
UI_MACHINE_PWD=Secret123

# ==========================================
# Postgres connection parameters
# ==========================================
PG_HOST=postgres_host
PG_USER=apigee
PG_PWD=postgres_password

# ==========================================
# Other UI Parameters
# ==========================================
# Set to sso to enable SSO, default value is basic.
AUTH_MODE=sso

# Y to use internal LDAP for authentication, N to use external IDP
SSO_LOCAL_LDAP=y

MANAGEMENT_UI_APP_ENV=OPDK
MANAGEMENT_UI_SSO_ENABLED=y
MANAGEMENT_UI_SSO_CSRF_SECRET=secret
MANAGEMENT_UI_SSO_CSRF_EXPIRATION_HOURS=24
MANAGEMENT_UI_SSO_STRICT_TRANSPORT_SECURITY_AGE_HOURS=24
MANAGEMENT_UI_SSO_PUBLIC_KEY_CACHE_HOURS=0.5

Distribución de propiedades de SSO

Las propiedades de SSO de Apigee se distribuyen en los siguientes archivos de configuración:

  • /opt/silent.conf (o tu archivo de configuración personalizado): Contiene las propiedades de configuración base para SSO y la IU de New Edge.
  • /opt/apigee/customer/application/openldap.properties: Contiene propiedades de configuración de SSO adicionales para funciones opcionales, como SAML y HTTPS.

La secuencia de comandos setup-sso en el componente apigee-openldap analiza las variables de ambos archivos anteriores. Según tu caso de uso, debes configurar las propiedades pertinentes en los archivos de configuración.

Los siguientes pasos son opcionales según tu entorno:

Crea una base de datos de SSO en Postgres

En el nodo en el que se ejecuta apigee-postgresql (nodo maestro en la configuración principal-en espera), crea una base de datos para SSO:

/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-sso-db

Aplica las configuraciones de SSO en OpenLDAP

Debido a que el SSO de Apigee está integrado en el componente de directorio, no es necesario instalar un paquete independiente. Simplemente aplica el archivo de configuración al nodo OpenLDAP.

Para habilitar y comenzar a usar el SSO de Apigee, haz lo siguiente:
  1. Accede al nodo que aloja apigee-openldap.
  2. Ejecuta el comando setup-sso y pasa tu archivo de configuración:
    /opt/apigee/apigee-service/bin/apigee-service apigee-openldap setup-sso -f /opt/silent.conf

Configura la IU de New Edge

Una vez que se ejecuta el SSO de Apigee, debes configurar la IU de New Edge para que se comunique con él.

Después de habilitar un IDP externo en la IU de New Edge, la IU de New Edge usa OIDC/OAuth2 para conectarse al servidor de administración. No tienes que preocuparte por los tokens vencidos entre la IU de New Edge y el servidor de administración de Edge. Los tokens vencidos se actualizan automáticamente.

  1. Accede al nodo que aloja la IU de New Edge.
  2. Asegúrate de que tu archivo /opt/silent.conf esté disponible en este nodo.
  3. Aplica la configuración con la secuencia de comandos setup:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-ui setup -f /opt/silent.conf