Interfejs Edge UI i interfejs Edge Management API 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 Edge Management API, przekazując nazwę użytkownika i hasło.
- OAuth2: wymień dane logowania uwierzytelniania podstawowego Edge na token dostępu OAuth2 i token odświeżania. Wykonuj wywołania interfejsu Edge Management API, 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 dostępu OAuth na podstawie asercji SAML zwracanych przez dostawcę tożsamości SAML.
- Lightweight Directory Access Protocol (LDAP): używaj metod uwierzytelniania LDAP, takich jak wyszukiwanie i powiązanie lub proste powiązanie, 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 Edge 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 instrukcji dotyczących uwierzytelniania zewnętrznego w następujących kwestiach:
- Ta sekcja dodaje obsługę SSO
- 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.
Logowanie jednokrotne w Apigee
Aby obsługiwać SAML lub LDAP w Edge, zainstaluj apigee-sso, czyli moduł Apigee SSO.
Obraz poniżej przedstawia logowanie jednokrotne Apigee w instalacji Edge for Private Cloud:
Moduł logowania jednokrotnego Apigee możesz zainstalować na tym samym węźle co interfejs Edge i serwer zarządzania lub na osobnym węźle. Sprawdź, czy logowanie jednokrotne Apigee ma dostęp do serwera zarządzania przez port 8080.
Port 9099 musi być otwarty na węźle logowania jednokrotnego Apigee, aby obsługiwać dostęp do logowania jednokrotnego Apigee z przeglądarki, zewnętrznego dostawcy tożsamości SAML lub LDAP oraz serwera zarządzania i interfejsu Edge. W ramach konfigurowania Apigee SSO możesz określić, czy połączenie zewnętrzne ma używać protokołu HTTP czy zaszyfrowanego protokołu HTTPS.
Apigee SSO korzysta z bazy danych Postgres dostępnej na porcie 5432 na węźle Postgres. Zazwyczaj 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 podstawowym/rezerwowym. Jeśli obciążenie serwera Postgres jest duże, możesz też utworzyć osobny węzeł Postgres tylko na potrzeby Apigee SSO.
Dodaliśmy obsługę protokołu OAuth2 w Edge dla chmury prywatnej
Jak wspomnieliśmy powyżej, implementacja SAML w Edge opiera się na tokenach dostępu OAuth2.Dlatego do Edge for Private Cloud dodaliśmy obsługę OAuth2. Więcej informacji znajdziesz w artykule o OAuth 2.0.
Informacje o SAML
Uwierzytelnianie SAML ma kilka zalet. Korzystając z SAML, możesz:
- Przejmij pełną kontrolę nad zarządzaniem użytkownikami. Gdy użytkownicy opuszczają organizację i są centralnie pozbawiani dostępu do usług, automatycznie odmawia się im dostępu 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.
- kontrolować zasady uwierzytelniania; Dostawca SAML może obsługiwać zasady uwierzytelniania bardziej zgodne ze standardami Twojej firmy.
- Możesz monitorować logowania, wylogowania, nieudane próby logowania i działania o wysokim ryzyku w swoim wdrożeniu Edge.
Gdy SAML jest włączony, dostęp do interfejsu Edge i interfejsu Edge Management API odbywa się za pomocą tokenów dostępu OAuth2. Te tokeny są generowane przez moduł logowania jednokrotnego 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. Środowisko programistyczne może obsługiwać automatyzację typowych zadań programistycznych, takich jak automatyzacja testów lub ciągła integracja/ciągłe wdrażanie (CI/CD), które wymagają tokenów o dłuższym czasie trwania. Informacje o tworzeniu specjalnych tokenów do automatyzacji zadań znajdziesz w artykule Używanie SAML do automatyzacji zadań.
Informacje o LDAP
Protokół LDAP (Lightweight Directory Access Protocol) to otwarty standard branżowy protokołu aplikacji do uzyskiwania dostępu do rozproszonych usług informacji o katalogach i zarządzania nimi. Usługi katalogowe mogą udostępniać dowolny uporządkowany zbiór rekordów, często o strukturze hierarchicznej, np. katalog adresów e-mail firmy.
Uwierzytelnianie LDAP w Apigee SSO korzysta z modułu Spring Security LDAP. W rezultacie metody uwierzytelniania i opcje konfiguracji obsługi LDAP w Apigee SSO są bezpośrednio powiązane z metodami i opcjami w Spring Security LDAP.
LDAP z Edge for the Private Cloud obsługuje te metody uwierzytelniania na serwerze zgodnym z LDAP:
- Wyszukiwanie i powiązanie (powiązanie pośrednie)
- Proste powiązanie (powiązanie bezpośrednie)
Apigee SSO 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 tego adresu do celów autoryzacji.
Adresy URL interfejsu Edge i interfejsu API
Adres URL, którego używasz do uzyskiwania dostępu do interfejsu Edge i interfejsu Edge Management API, jest taki sam jak przed włączeniem SAML lub LDAP. W przypadku interfejsu Edge:
http://edge_UI_IP_DNS:9000 https://edge_UI_IP_DNS:9000
gdzie edge_UI_IP_DNS to adres IP lub nazwa DNS maszyny, na której jest hostowany interfejs Edge. W ramach 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. Podczas konfigurowania interfejsu API możesz określić, czy połączenie ma korzystać z protokołu HTTP, czy z szyfrowanego protokołu HTTPS.
Konfigurowanie TLS w Apigee SSO
Domyślnie połączenie z Apigee SSO używa protokołu HTTP na porcie 9099 na węźle hostującym apigee-sso, czyli moduł Apigee SSO. W apigee-sso jest wbudowana instancja serwera Tomcat, która obsługuje żądania HTTP i HTTPS.
Apigee SSO i Tomcat obsługują 3 tryby połączenia:
- DOMYŚLNA: domyślna konfiguracja obsługuje żądania HTTP na porcie 9099.
- SSL_TERMINATION: włączony dostęp TLS do logowania jednokrotnego Apigee na wybranym porcie. W tym trybie musisz określić klucz i certyfikat TLS.
- SSL_PROXY::konfiguruje logowanie jednokrotne Apigee w trybie serwera proxy, co oznacza, że przed
apigee-ssozainstalowano system równoważenia obciążenia i zakończono TLS w systemie równoważenia obciążenia. Możesz określić port używany naapigee-ssow przypadku żą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 deweloperó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 w przypadku logowania dewelopera w portalu. Uwierzytelnianie za pomocą zewnętrznego dostawcy tożsamości w przypadku logowania dewelopera konfiguruje się osobno. Więcej informacji znajdziesz w artykule Konfigurowanie portalu do korzystania z dostawców tożsamości.
Podczas konfigurowania portalu musisz podać adres URL modułu logowania jednokrotnego Apigee zainstalowanego w Edge:
