Installare e configurare Apigee SSO

A partire da OPDK 4.54.00, l'architettura SSO è stata modernizzata. L'identity broker (Dex) è ora incorporato direttamente nel componente apigee-openldap, eliminando la necessità di installare un modulo apigee-sso legacy separato.

Per abilitare e configurare SSO Apigee, devi eseguire le seguenti operazioni:

  1. Crea un utente della macchina per la nuova UI Edge: crea un utente della macchina necessario per la nuova UI Edge per richiamare le API di gestione.
  2. Configura le proprietà nel file di configurazione comune: crea un singolo file di configurazione che contenga le proprietà richieste sia dal servizio OpenLDAP (SSO) sia dalla nuova UI Edge.
  3. Crea il database SSO in Postgres: crea un database per SSO nell'istanza PostgreSQL di Apigee.
  4. Applica le configurazioni SSO in OpenLDAP: applica il file di configurazione per avviare SSO Apigee integrato sul nodo OpenLDAP.
  5. Configura la nuova UI Edge: aggiorna le proprietà della nuova UI Edge per utilizzare il nuovo SSO Apigee.

Ognuno di questi passaggi è descritto nelle sezioni seguenti.

Crea un utente della macchina per l'UI

La nuova UI Edge richiede un utente della macchina per richiamare le API di gestione nel backend per determinate operazioni. A questo scopo viene utilizzato uno script preinstallato nel nodo apigee-openldap.

Scopri di più sullo script e sugli utenti della macchina in Utilizzare lo script apigee-machine-user.

Utilizza il seguente comando nel nodo apigee-openldap per creare un utente della macchina per la nuova UI Edge e assicurati di utilizzare le stesse credenziali quando definisci la proprietà nel file di configurazione nel passaggio successivo.

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

Configura le proprietà nel file di configurazione comune

Prima di poter abilitare SSO Apigee e la nuova UI Edge, devi definire un file di configurazione comune (ad esempio /opt/silent.conf). Puoi modificare questo percorso e il nome file in base alle esigenze del tuo ambiente.

Aggiungi le seguenti proprietà di configurazione di base a /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

Distribuzione delle proprietà SSO

Le proprietà di SSO Apigee sono distribuite nei seguenti file di configurazione:

  • /opt/silent.conf (o il file di configurazione personalizzato): contiene le proprietà di configurazione di base per SSO e la nuova UI Edge.
  • /opt/apigee/customer/application/openldap.properties: contiene proprietà di configurazione SSO aggiuntive per funzionalità facoltative come SAML e HTTPS.

Lo script setup-sso nel componente apigee-openldap analizza le variabili di entrambi i file sopra indicati. A seconda del caso d'uso, devi configurare le proprietà pertinenti nei file di configurazione.

I seguenti passaggi sono facoltativi a seconda dell'ambiente:

Crea il database SSO in Postgres

Sul nodo in cui è in esecuzione apigee-postgresql (nodo master nella configurazione primaria-standby), crea un database per SSO:

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

Applica le configurazioni SSO in OpenLDAP

Poiché SSO Apigee è incorporato nel componente della directory, non è necessario installare un pacchetto autonomo. È sufficiente applicare il file di configurazione al nodo OpenLDAP.

Per abilitare e avviare SSO Apigee:
  1. Accedi al nodo che ospita apigee-openldap.
  2. Esegui il comando setup-sso, passando il file di configurazione:
    /opt/apigee/apigee-service/bin/apigee-service apigee-openldap setup-sso -f /opt/silent.conf

Configura la nuova UI Edge

Una volta che SSO Apigee è in esecuzione, devi configurare la nuova UI Edge in modo che comunichi con esso.

Dopo aver abilitato un IdP esterno nella nuova UI Edge, quest'ultima utilizza OIDC/OAuth2 per connettersi al server di gestione. Non devi preoccuparti della scadenza dei token tra la nuova UI Edge e il server di gestione Edge. I token scaduti vengono aggiornati automaticamente.

  1. Accedi al nodo che ospita la nuova UI Edge.
  2. Assicurati che il file /opt/silent.conf sia disponibile su questo nodo.
  3. Applica la configurazione utilizzando lo script setup:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-ui setup -f /opt/silent.conf