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:
- 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.
- 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.
- Crea una base de datos de SSO en Postgres: Crea una base de datos para SSO en la instancia de PostgreSQL de Apigee.
- Aplica las configuraciones de SSO en OpenLDAP: Aplica el archivo de configuración para iniciar el SSO de Apigee integrado en el nodo OpenLDAP.
- 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:- Accede al nodo que aloja
apigee-openldap. - Ejecuta el comando
setup-ssoy 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.
- Accede al nodo que aloja la IU de New Edge.
- Asegúrate de que tu archivo
/opt/silent.confesté disponible en este nodo. - 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