Portal für die Verwendung externer IdPs konfigurieren

Das Apigee Developer Services-Portal (oder einfach das Portal) fungiert als Client von Apigee Edge. Das bedeutet, dass das Portal nicht als eigenständiges System funktioniert. Stattdessen werden viele der vom Portal verwendeten Informationen tatsächlich in Edge gespeichert. Bei Bedarf stellt das Portal eine Anfrage, um Informationen von Edge abzurufen oder Informationen an Edge zu senden.

Das Portal ist immer mit einer einzelnen Edge-Organisation verknüpft. Wenn Sie das Portal konfigurieren, können Sie die grundlegenden Authentifizierungsdaten (Nutzername und Passwort) für ein Konto in der Organisation angeben, das das Portal für die Kommunikation mit Edge verwendet.

Wenn Sie einen externen IDP wie SAML oder LDAP für die Edge-Authentifizierung aktivieren, können Sie das Portal so konfigurieren, dass diese Authentifizierung bei Anfragen an Edge verwendet wird. Wenn Sie das Portal für die Verwendung eines externen IDP konfigurieren, wird automatisch ein neues Maschinen-Nutzerkonto in der Edge-Organisation erstellt, das das Portal dann für Anfragen an Edge verwendet. Weitere Informationen zu Maschinennutzern finden Sie unter Aufgaben für externe IdPs automatisieren.

Für die Unterstützung externer IdPs für das Portal muss das Apigee-SSO-Modul bereits auf dem Edge Management Server-Knoten installiert und konfiguriert sein. So aktivieren Sie einen externen IdP für das Portal:

  1. Installieren Sie das Apigee-SSO-Modul, wie unter Apigee-SSO installieren und konfigurieren beschrieben.
  2. Installieren Sie das Portal und prüfen Sie, ob die Installation ordnungsgemäß funktioniert. Siehe Portal installieren.
  3. Konfigurieren Sie SAML oder LDAP im Portal, wie in diesem Abschnitt beschrieben.
  4. (Optional) Deaktivieren Sie die Basisauthentifizierung in Edge, wie unter Basisauthentifizierung in Edge deaktivieren beschrieben.

Maschinennutzer für das Portal erstellen

Wenn ein externer IDP aktiviert ist, unterstützt Edge die automatisierte OAuth2-Tokengenerierung durch die Verwendung von Maschinennutzern. Ein Maschinennutzer kann OAuth2-Tokens abrufen, ohne einen Passcode angeben zu müssen. Das bedeutet, dass Sie den Prozess zum Abrufen und Aktualisieren von OAuth2-Tokens vollständig automatisieren können.

Bei der IDP-Konfiguration für das Portal wird automatisch ein Computernutzer in der Organisation erstellt, die mit dem Portal verknüpft ist. Das Portal verwendet dann dieses Nutzerkonto, um eine Verbindung zu Edge herzustellen. Weitere Informationen zu Maschinennutzern finden Sie unter Aufgaben für externe IdPs automatisieren.

Authentifizierung für Portalentwicklerkonten

Wenn Sie das Portal für die Verwendung eines externen IDP konfigurieren, aktivieren Sie das Portal für die Verwendung von SAML oder LDAP zur Authentifizierung bei Edge, damit das Portal Anfragen an Edge senden kann. Das Portal unterstützt jedoch auch einen Nutzertyp namens Entwickler.

Entwickler bilden die Community von Nutzern, die Anwendungen mithilfe Ihrer APIs erstellen. App-Entwickler nutzen das Portal, um sich über Ihre APIs zu informieren, Apps zu registrieren, die Ihre APIs verwenden, mit der Entwickler-Community zu interagieren und statistische Informationen zur App-Nutzung in einem Dashboard aufzurufen.

Wenn sich ein Entwickler im Portal anmeldet, ist das Portal für die Authentifizierung des Entwicklers und die Durchsetzung rollenbasierter Berechtigungen verantwortlich. Das Portal verwendet weiterhin die Basisauthentifizierung mit Entwicklern, auch nachdem Sie die IDP-Authentifizierung zwischen dem Portal und Edge aktiviert haben. Weitere Informationen finden Sie unter Kommunikation zwischen dem Portal und Edge.

Es ist auch möglich, das Portal so zu konfigurieren, dass SAML oder LDAP zur Authentifizierung von Entwicklern verwendet wird. Ein Beispiel für die Aktivierung von SAML mit Drupal-Modulen von Drittanbietern finden Sie unter SSO-Integration über SAML mit Entwicklerportal.

IDP-Konfigurationsdatei für das Portal

Wenn Sie einen externen IdP für das Portal konfigurieren möchten, müssen Sie eine Konfigurationsdatei erstellen, in der die Einstellungen des Portals definiert sind.

Das folgende Beispiel zeigt eine Portalkonfigurationsdatei mit IDP-Unterstützung:

# IP address of Edge Management Server and the node on which the Apigee SSO module is installed.
IP1=22.222.22.222

# URL of Edge management API.
MGMT_URL=http://$IP1:8080/v1

# Organization associated with the portal.
EDGE_ORG=myorg

# Information about the Apigee SSO module (apigee-sso).
# Externally accessible IP or DNS of apigee-sso.
SSO_PUBLIC_URL_HOSTNAME=$IP1
SSO_PUBLIC_URL_PORT=9099
# Default is http. Set to https if you enabled TLS on apigee-sso.
SSO_PUBLIC_URL_SCHEME=http

# SSO admin credentials as set when you installed apigee-sso.
SSO_ADMIN_NAME=ssoadmin
SSO_ADMIN_SECRET=Secret123

# Enables or disables external IDP support.
# Default is "n", which disables external IDP support.
# Change it to "y" to enable external IDs support.
DEVPORTAL_SSO_ENABLED=y

# The name of the OAuth2 client used to connect to apigee-sso.
# The default client name is portalcli.
PORTALCLI_SSO_CLIENT_NAME=portalcli
# OAuth client password using uppercase, lowercase, number, and special characters.
PORTALCLI_SSO_CLIENT_SECRET=Abcdefg@1

# Email address and user info for the machine user created in the Edge org specified
# above by EDGE_ORG.
# This account is used by the portal to make requests to Edge.
# Add this email as an org admin before configuring the portal to use an external IDP.
DEVPORTAL_ADMIN_EMAIL=DevPortal_SAML@google.com
DEVPORTAL_ADMIN_FIRSTNAME=DevPortal
DEVPORTAL_ADMIN_LASTNAME=SAMLAdmin
DEVPORTAL_ADMIN_PWD=Abcdefg@1

# If set, the existing portal OAuth client is deleted and a new one is created.
# The default value is "n".
# Set to "y" when you configure the external IDP and change the value of
# any of the PORTALCLI_* properties.
PORTALCLI_SSO_CLIENT_OVERWRITE=y

So aktivieren Sie die Unterstützung für externe IdPs im Portal:

  1. Fügen Sie in der Edge-Benutzeroberfläche den durch DEVPORTAL_ADMIN_EMAIL angegebenen Maschinennutzer der mit dem Portal verknüpften Organisation als Organization Administrator hinzu.
  2. Führen Sie den folgenden Befehl aus, um den externen IdP im Portal zu konfigurieren:
    /opt/apigee/apigee-service/bin/apigee-service apigee-drupal-devportal configure-sso -f configFile

    Dabei ist configFile die oben beschriebene Konfigurationsdatei.

  3. Melden Sie sich als Portaladministrator im Portal an.
  4. Wählen Sie im Drupal-Hauptmenü Configuration > Dev Portal aus. Der Bildschirm für die Portalkonfiguration wird angezeigt, einschließlich der Einstellungen für den externen IdP:

    Wichtige Hinweise:

    • Das Kästchen für This org is SAML-enabled (Diese Organisation ist SAML-fähig) ist angeklickt.
    • Der Endpunkt für das Apigee-SSO-Modul ist ausgefüllt.
    • Die Felder API-Schlüssel und Consumer-Secret für den Portal-OAuth-Client sind ausgefüllt.
    • Die Meldung Verbindung erfolgreich wird unter der Schaltfläche Verbindung testen angezeigt.
  5. Klicken Sie auf den Button Verbindung testen, um die Verbindung jederzeit noch einmal zu testen.

Wenn Sie diese Werte später ändern möchten, aktualisieren Sie die Konfigurationsdatei und führen Sie dieses Verfahren noch einmal aus.

Externen IdP im Portal deaktivieren

Wenn Sie Ihren externen IDP für die Kommunikation zwischen dem Portal und Edge deaktivieren, kann das Portal keine Anfragen mehr an Edge senden. Entwickler können sich im Portal anmelden, aber keine Produkte ansehen oder Anwendungen erstellen.

So deaktivieren Sie die Authentifizierung über einen externen IdP im Portal:

  1. Öffnen Sie die Konfigurationsdatei, die Sie zuvor zum Aktivieren des externen IdP verwendet haben.
  2. Legen Sie den Wert des Attributs DEVPORTAL_SSO_ENABLED auf n fest, wie im folgenden Beispiel gezeigt:
    DEVPORTAL_SSO_ENABLED=n
  3. Konfigurieren Sie das Portal mit dem folgenden Befehl:
    /opt/apigee/apigee-service/bin/apigee-service apigee-drupal-devportal configure-sso -f configFile