Installer et configurer l'authentification unique Apigee

À partir d'OPDK 4.54.00, l'architecture SSO a été modernisée. Le courtier d'identité (Dex) est désormais intégré directement au composant apigee-openldap, ce qui élimine le besoin d'installer un module apigee-sso hérité distinct.

Pour activer et configurer Apigee SSO, procédez comme suit :

  1. Créer un utilisateur machine pour la nouvelle interface utilisateur Edge : créez un utilisateur machine requis pour que la nouvelle interface utilisateur Edge appelle les API de gestion.
  2. Configurer les propriétés dans le fichier de configuration commun: créez un fichier de configuration unique contenant les propriétés requises à la fois par le service OpenLDAP (SSO) et par la nouvelle interface utilisateur Edge.
  3. Créer une base de données SSO dans Postgres : créez une base de données pour le SSO dans l'instance Apigee PostgreSQL.
  4. Appliquer les configurations SSO dans OpenLDAP : appliquez le fichier de configuration pour démarrer l'Apigee SSO intégré sur le nœud OpenLDAP.
  5. Configurer la nouvelle interface utilisateur Edge: mettez à jour les propriétés de la nouvelle interface utilisateur Edge pour utiliser le nouvel Apigee SSO.

Toutes ces étapes sont décrites plus en détail dans les sections suivantes.

Créer un utilisateur machine pour l'interface utilisateur

La nouvelle interface utilisateur Edge nécessite un utilisateur machine pour appeler les API Management dans le backend pour certaines opérations. Un script préinstallé dans le apigee-openldap nœud est utilisé à cet effet.

Pour en savoir plus sur le script et les utilisateurs machines, consultez Utiliser le script apigee-machine-user.

Utilisez la commande suivante dans le nœud apigee-openldap pour créer un utilisateur machine pour la nouvelle interface utilisateur Edge, et veillez à utiliser exactement les mêmes identifiants lorsque vous définissez la propriété dans le fichier de configuration à l'étape suivante.

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

Configurer les propriétés dans le fichier de configuration commun

Avant de pouvoir activer Apigee SSO et la nouvelle interface utilisateur Edge, vous devez définir un fichier de configuration commun (par exemple, /opt/silent.conf). Vous pouvez modifier ce chemin d'accès et ce nom de fichier en fonction des besoins de votre environnement.

Ajoutez les propriétés de configuration de base suivantes à votre fichier /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

Distribution des propriétés SSO

Les propriétés Apigee SSO sont distribuées dans les fichiers de configuration suivants :

  • /opt/silent.conf (ou votre fichier de configuration personnalisé) : contient les propriétés de configuration de base pour le SSO et la nouvelle interface utilisateur Edge.
  • /opt/apigee/customer/application/openldap.properties : contient des propriétés de configuration SSO supplémentaires pour les fonctionnalités facultatives telles que SAML et HTTPS.

Le script setup-sso du composant apigee-openldap analyse les variables des deux fichiers ci-dessus. En fonction de votre cas d'utilisation, vous devez configurer les propriétés pertinentes dans les fichiers de configuration.

Les étapes suivantes sont facultatives en fonction de votre environnement :

Créer une base de données SSO dans Postgres

Sur le nœud où apigee-postgresql est en cours d'exécution (nœud maître dans une configuration primaire-veille), créez une base de données pour le SSO :

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

Appliquer les configurations SSO dans OpenLDAP

Étant donné qu'Apigee SSO est intégré au composant d'annuaire, vous n'avez pas besoin d'installer de package autonome. Il vous suffit d'appliquer le fichier de configuration au nœud OpenLDAP.

Pour activer et démarrer Apigee SSO :
  1. Connectez-vous au nœud hébergeant apigee-openldap.
  2. Exécutez la commande setup-sso en transmettant votre fichier de configuration :
    /opt/apigee/apigee-service/bin/apigee-service apigee-openldap setup-sso -f /opt/silent.conf

Configurer la nouvelle interface utilisateur Edge

Une fois Apigee SSO en cours d'exécution, vous devez configurer la nouvelle interface utilisateur Edge pour qu'elle communique avec lui.

Une fois que vous avez activé un IdP externe sur la nouvelle interface utilisateur Edge, celle-ci utilise OIDC/OAuth2 pour se connecter au serveur de gestion. Vous n'avez pas à vous soucier de l'expiration des jetons entre la nouvelle interface utilisateur Edge et le serveur de gestion Edge. Les jetons expirés sont automatiquement actualisés.

  1. Connectez-vous au nœud hébergeant la nouvelle interface utilisateur Edge.
  2. Assurez-vous que votre fichier /opt/silent.conf est disponible sur ce nœud.
  3. Appliquez la configuration à l'aide du script setup :
    /opt/apigee/apigee-service/bin/apigee-service edge-management-ui setup -f /opt/silent.conf