Omówienie uwierzytelniania zewnętrznego dostawcy tożsamości

Interfejs użytkownika Edge i interfejs API zarządzania Edge działają przez wysyłanie żądań do serwera zarządzania Edge, który obsługuje te typy uwierzytelniania:

  • Uwierzytelnianie podstawowe: zaloguj się w interfejsie Edge lub wysyłaj żądania do interfejsu API zarządzania Edge, podając nazwę użytkownika i hasło.
  • OAuth2: wymień dane uwierzytelniające Edge Basic Auth na token dostępu i token odświeżania OAuth2. Wywołuj interfejs API zarządzania Google Analytics, przekazując token dostępu OAuth2 w nagłówku Bearer wywołania interfejsu API.

Edge obsługuje uwierzytelnianie za pomocą tych zewnętrznych dostawców tożsamości:

  • Security Assertion Markup Language (SAML) 2.0: generowanie tokenów dostępu OAuth na podstawie asercji SAML zwracanych przez dostawcę tożsamości SAML.
  • Lightweight Directory Access Protocol (LDAP): używaj metod uwierzytelniania wyszukiwania i powiązania lub prostego powiązania LDAP do generowania tokenów dostępu OAuth.

Zarówno dostawcy tożsamości SAML, jak i LDAP obsługują środowisko logowania jednokrotnego. Korzystając z zewnętrznego dostawcy tożsamości w Edge, możesz obsługiwać logowanie jednokrotne w interfejsie i interfejsie API Edge, a także w innych usługach, które udostępniasz i które również obsługują zewnętrznego dostawcę tożsamości.

Instrukcje w tej sekcji dotyczące włączania obsługi zewnętrznego dostawcy tożsamości różnią się od uwierzytelniania zewnętrznego w następujący sposób:

  • Ta sekcja dodaje obsługę logowania jednokrotnego.
  • Ta sekcja jest przeznaczona dla użytkowników interfejsu Edge (nie klasycznego interfejsu użytkownika)
  • Ta sekcja jest obsługiwana tylko w wersji 4.19.06 i nowszych

Informacje o SSO w Apigee

Aby obsługiwać SAML lub LDAP w Edge, zainstaluj apigee-sso, moduł SSO w Apigee. Poniższy obraz przedstawia SSO w Apigee w instalacji Edge dla chmury prywatnej:

Wykorzystanie portu na potrzeby SSO w Apigee

Moduł SSO w Apigee możesz zainstalować w tym samym węźle co interfejs Edge i serwer zarządzania lub we własnym węźle. Upewnij się, że SSO w Apigee ma dostęp do serwera zarządzania przez port 8080.

Port 9099 musi być otwarty w węźle SSO w Apigee, aby umożliwić dostęp do SSO w Apigee z przeglądarki, z zewnętrznego dostawcy tożsamości SAML lub LDAP oraz z serwera zarządzania i interfejsu Edge. W ramach konfigurowania SSO w Apigee możesz określić, czy połączenie zewnętrzne ma używać protokołu HTTP czy zaszyfrowanego protokołu HTTPS.

SSO w Apigee korzysta z bazy danych Postgres dostępnej na porcie 5432 w węźle Postgres. Zwykle możesz używać tego samego serwera Postgres, który został zainstalowany z Edge, czyli samodzielnego serwera Postgres lub 2 serwerów Postgres skonfigurowanych w trybie głównym/czuwania. Jeśli obciążenie serwera Postgres jest wysokie, możesz też utworzyć osobny węzeł Postgres tylko na potrzeby SSO w Apigee.

Dodaliśmy obsługę protokołu OAuth2 w Edge dla chmury prywatnej

Jak wspomniano powyżej, implementacja SAML w Edge opiera się na tokenach dostępu OAuth2.Dlatego do Edge dla chmury prywatnej dodano obsługę OAuth2. Więcej informacji znajdziesz w artykule Wprowadzenie do OAuth 2.0.

Informacje o SAML

Uwierzytelnianie SAML ma kilka zalet. Dzięki SAML możesz:

  • Przejmij pełną kontrolę nad zarządzaniem użytkownikami. Gdy użytkownicy opuszczają organizację i są centralnie wyrejestrowywani, automatycznie tracą dostęp do Edge.
  • Kontrolowanie sposobu uwierzytelniania użytkowników w celu uzyskania dostępu do Edge. Możesz wybrać różne typy uwierzytelniania dla różnych organizacji Edge.
  • Zarządzanie zasadami uwierzytelniania. Dostawca SAML może obsługiwać zasady uwierzytelniania, które są bardziej zgodne ze standardami Twojej firmy.
  • Możesz monitorować logowania, wylogowania, nieudane próby logowania i działania wysokiego ryzyka we wdrożeniu Edge.

Gdy protokół SAML jest włączony, dostęp do interfejsu Edge i interfejsu API zarządzania Google Analytics Edge jest możliwy za pomocą tokenów dostępu OAuth2. Te tokeny są generowane przez moduł SSO w Apigee, który akceptuje asercje SAML zwracane przez dostawcę tożsamości.

Po wygenerowaniu z asercji SAML token OAuth jest ważny przez 30 minut, a token odświeżania przez 24 godziny. Twoje środowisko programistyczne może obsługiwać automatyzację typowych zadań programistycznych, takich jak automatyzacja testów czy tryb ciągłej integracji/ciągłe wdrażanie (CI/CD), które wymagają tokenów o dłuższym czasie ważności. Informacje o tworzeniu specjalnych tokenów do zadań automatycznych znajdziesz w artykule Korzystanie z SAML w zadaniach automatycznych.

Informacje o LDAP

Lightweight Directory Access Protocol (LDAP) to otwarty, standard branżowy protokół aplikacji, który umożliwia dostęp do rozproszonych usług informacji katalogowych i ich obsługę. Usługi katalogowe mogą udostępniać dowolny uporządkowany zestaw rekordów, często o strukturze hierarchicznej, np. katalog firmowych adresów e-mail.

Uwierzytelnianie LDAP w ramach SSO w Apigee korzysta z modułu Spring Security LDAP. W związku z tym metody uwierzytelniania i opcje konfiguracji obsługi LDAP w SSO w Apigee są bezpośrednio powiązane z tymi, które można znaleźć w Spring Security LDAP.

LDAP z Edge for chmura prywatna obsługuje te metody uwierzytelniania na serwerze zgodnym z LDAP:

  • Wyszukiwanie i powiązanie (powiązanie pośrednie)
  • Simple Bind (powiązanie bezpośrednie)

SSO w Apigee próbuje pobrać adres e-mail użytkownika i zaktualizować nim wewnętrzny rekord użytkownika, aby w pliku znajdował się aktualny adres e-mail, ponieważ Edge używa go do autoryzacji.

Adresy URL interfejsu użytkownika i interfejsu API Edge

Adres URL, którego używasz do uzyskiwania dostępu do interfejsu Edge i interfejsu API zarządzania Edge, jest taki sam jak przed włączeniem SAML lub LDAP. W interfejsie Edge:

http://edge_UI_IP_DNS:9000
https://edge_UI_IP_DNS:9000

Gdzie edge_UI_IP_DNS to adres IP lub nazwa DNS komputera, na którym znajduje się interfejs użytkownika Edge. Podczas konfigurowania interfejsu Edge możesz określić, czy połączenie ma używać protokołu HTTP czy szyfrowanego protokołu HTTPS.

W przypadku interfejsu Edge Management API:

http://ms_IP_DNS:8080/v1
https://ms_IP_DNS:8080/v1

Gdzie ms_IP_DNS to adres IP lub nazwa DNS serwera zarządzania. W ramach konfigurowania interfejsu API możesz określić, że połączenie ma używać protokołu HTTP lub zaszyfrowanego protokołu HTTPS.

Konfigurowanie TLS w SSO w Apigee

Domyślnie połączenie z SSO w Apigee używa protokołu HTTP przez port 9099 na węźle hostującym apigee-sso, moduł SSO w Apigee. W apigee-sso wbudowana jest instancja Tomcat, która obsługuje żądania HTTP i HTTPS.

SSO w Apigee i Tomcat obsługują 3 tryby połączenia:

  • DEFAULT: domyślna konfiguracja obsługuje żądania HTTP na porcie 9099.
  • SSL_TERMINATION: włącza dostęp TLS do SSO w Apigee na wybranym porcie. W tym trybie musisz określić klucz i certyfikat TLS.
  • SSL_PROXY: konfiguruje SSO w Apigee w trybie proxy, co oznacza, że przed apigee-sso zainstalowano system równoważenia obciążenia i zakończono TLS na systemie równoważenia obciążenia. Możesz określić port używany w apigee-sso na potrzeby żądań z systemu równoważenia obciążenia.

Włączanie obsługi zewnętrznego dostawcy tożsamości w portalu

Po włączeniu obsługi zewnętrznego dostawcy tożsamości w Edge możesz opcjonalnie włączyć ją w portalu usług dla programistów Apigee (lub po prostu w portalu). Portal obsługuje uwierzytelnianie SAML i LDAP podczas wysyłania żądań do Edge. Pamiętaj, że różni się to od uwierzytelniania SAML i LDAP na potrzeby logowania dewelopera w portalu. Uwierzytelnianie zewnętrznego dostawcy tożsamości na potrzeby logowania dewelopera konfiguruje się osobno. Więcej informacji znajdziesz w artykule Konfigurowanie portalu pod kątem korzystania z dostawców tożsamości.

W ramach konfigurowania portalu musisz podać adres URL modułu SSO w Apigee zainstalowanego z Edge:

Przepływ żądań i odpowiedzi z tokenami