Konfigurowanie portalu pod kątem korzystania z SAML do komunikacji z Edge

Edge for Private Cloud w wersji 4.18.05

Portal usług dla deweloperów Apigee (lub po prostu portal) działa jako klient Apigee Edge. Oznacza to, że portal nie działa jako samodzielny system. Większość informacji używanych przez portal jest przechowywana w Edge. W razie potrzeby portal wysyła żądanie pobierania informacji z Edge lub wysyła informacje do Edge.

Portal jest zawsze powiązany z jedną organizacją Edge. Podczas konfigurowania portalu możesz podać podstawowe dane uwierzytelniania (nazwę użytkownika i hasło) do konta w organizacji, którego portal używa do komunikacji z Edge.

Jeśli zdecydujesz się włączyć SAML do uwierzytelniania w Edge, możesz skonfigurować portal tak, aby używał uwierzytelniania SAML podczas wysyłania żądań do Edge. Skonfigurowanie portalu do korzystania z protokołu SAML automatycznie tworzy nowe konto użytkownika maszyny w organizacji Edge, którego portal używa do wysyłania żądań do Edge. Więcej informacji o użytkownikach maszynowych znajdziesz w artykule Korzystanie z protokołu SAML w przypadku zadań automatycznych.

Obsługa SAML w portalu wymaga zainstalowania i skonfigurowania modułu SSO Edge na węźle serwera Edge Management. Ogólny proces włączania usługi SAML w portalu:

  1. Skonfiguruj SAML w Edge zgodnie z opisem w artykule Instalowanie i konfigurowanie SAML w Edge. Uwaga: aby zainstalować portal, w Edge nadal musisz włączyć uwierzytelnianie podstawowe. Nie wyłączaj uwierzytelniania podstawowego w Edge, dopóki nie skonfigurujesz portalu do używania SAML.
  2. Zainstaluj portal i upewnij się, że działa on prawidłowo. Zobacz instalowanie portalu Edge for Private Cloud.
  3. Skonfiguruj SAML w portalu.
  4. Możesz teraz wyłączyć uwierzytelnianie podstawowe w Edge.

Tworzenie użytkownika maszynowego na potrzeby portalu

Gdy SAML jest włączony, Edge obsługuje automatyczne generowanie tokenów OAuth2 za pomocą użytkowników maszynowych. Użytkownik maszyny może uzyskiwać tokeny OAuth 2 bez konieczności podawania kodu dostępu. Oznacza to, że możesz całkowicie zautomatyzować proces uzyskiwania i odświeżania tokenów OAuth2.

Proces konfiguracji SAML dla portalu automatycznie tworzy użytkownika maszynowego w organizacji powiązanej z portalem. Następnie portal używa tego konta użytkownika maszyny do nawiązywania połączenia z Edge. Więcej informacji o użytkownikach maszynowych znajdziesz w artykule Korzystanie z protokołu SAML w przypadku zadań automatycznych.

Informacje o uwierzytelnianiu kont dewelopera w portalu

Gdy skonfigurujesz portal do korzystania z SAML, umożliwisz mu używanie tego protokołu do uwierzytelniania w Edge, aby mógł wysyłać do niego żądania. Portal obsługuje też typ użytkownika o nazwie deweloperzy.

Deweloperzy tworzą społeczność użytkowników, którzy tworzą aplikacje, korzystając z Twoich interfejsów API. Deweloperzy aplikacji korzystają z portalu, aby dowiedzieć się więcej o Twoich interfejsach API, zarejestrować aplikacje, które ich używają, nawiązywać kontakt z społecznością deweloperów i wyświetlać w panelu informacje statystyczne o korzystaniu z aplikacji.

Gdy deweloper loguje się w portalu, to właśnie portal odpowiada za uwierzytelnianie dewelopera i za stosowanie uprawnień opartych na roli. Portal nadal będzie używać podstawowego uwierzytelniania z deweloperami, nawet jeśli włączysz SAML między portalem a Edge. Więcej informacji znajdziesz w artykule Komunikacja między portalem a Edge.

Można też skonfigurować portal tak, aby używał protokołu SAML do uwierzytelniania deweloperów. Przykład włączania SAML za pomocą modułów Drupala innych firm znajdziesz w artykule Integracja logowania jednokrotnego przez SAML z portalem deweloperów.

Skonfiguruj SAML na portalu, aby komunikować się z Edge

Aby skonfigurować SAML dla portalu, musisz utworzyć plik konfiguracji, który skonfiguruje portal:

# IP address of Edge Management Server and apigee-sso node.
IP1=22.222.22.222

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

# Org associated with the portal.
EDGE_ORG=myorg

# Information about 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

# Default is "n" to disable SAML support.
DEVPORTAL_SSO_ENABLED=y

# The name of the OAuth 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 chars. 
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 SAML. 
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 new one is created.
# The default value is "n".
# Set to "y" when you configure SAML and change the value of 
# any of the PORTALCLI_* properties.
PORTALCLI_SSO_CLIENT_OVERWRITE=y

Aby włączyć obsługę SAML w portalu:

  1. W interfejsie Edge dodaj użytkownika maszyny określonego przez DEVPORTAL_ADMIN_EMAIL do organizacji powiązanej z portalem jako administrator organizacji.
  2. Aby skonfigurować SAML w portalu, uruchom to polecenie:
    /opt/apigee/apigee-service/bin/apigee-service apigee-drupal-devportal configure-sso -f samlConfigFile

    Gdzie samlConfigFile to plik konfiguracji SAML.

  3. Zaloguj się w portalu jako administrator.
  4. W głównym menu Drupala kliknij Konfiguracja > Portal deweloperów. Pojawi się ekran konfiguracji portalu, w tym ustawienia SAML:

    Zaznaczone jest pole Ta organizacja obsługuje SAML, wypełniony jest punkt końcowy dla modułu SSO w Edge, pola Klucz API i Sposób logowania klienta w kliencie Oauth na portalu, a pod przyciskiem Testuj połączenie pojawia się komunikat Połączenie zostało nawiązane.

  5. W każdej chwili możesz ponownie sprawdzić połączenie, klikając przycisk Testuj połączenie.

Aby później zmienić te wartości, zaktualizuj plik konfiguracji i ponownie uruchom to polecenie.

Wyłączanie SAML na portalu

Jeśli zdecydujesz się wyłączyć SAML w komunikacji między portalem a Edge, portal nie będzie już mógł wysyłać żądań do Edge. Deweloperzy mogą logować się w portalu, ale nie będą mogli wyświetlać produktów ani tworzyć aplikacji.

Aby wyłączyć SAML na portalu:

  1. Zmodyfikuj plik konfiguracji, którego użyjesz do skonfigurowania SAM, aby ustawić:
    DEVPORTAL_SSO_ENABLED=n
  2. Skonfiguruj portal:
    /opt/apigee/apigee-service/bin/apigee-service apigee-drupal-devportal configure-sso -f configFile