À 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 :
- 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.
- 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.
- 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.
- Appliquer les configurations SSO dans OpenLDAP : appliquez le fichier de configuration pour démarrer l'Apigee SSO intégré sur le nœud OpenLDAP.
- 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 :- Connectez-vous au nœud hébergeant
apigee-openldap. - Exécutez la commande
setup-ssoen 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.
- Connectez-vous au nœud hébergeant la nouvelle interface utilisateur Edge.
- Assurez-vous que votre fichier
/opt/silent.confest disponible sur ce nœud. - Appliquez la configuration à l'aide du script
setup:/opt/apigee/apigee-service/bin/apigee-service edge-management-ui setup -f /opt/silent.conf