W artykule Instalowanie i konfigurowanie logowania jednokrotnego w Apigee opisano, jak zainstalować i skonfigurować moduł logowania jednokrotnego w Apigee tak, aby używał protokołu HTTP na porcie 9099, zgodnie z tą właściwością w pliku konfiguracji Edge:
SSO_TOMCAT_PROFILE=DEFAULT
Aby włączyć dostęp HTTPS, możesz też ustawić SSO_TOMCAT_PROFILE
na jedną z tych wartości:
- SSL_PROXY: konfiguruje
apigee-sso
, moduł logowania jednokrotnego w Apigee w trybie proxy, co oznacza, że został zainstalowany system równoważenia obciążenia przedapigee-sso
i zakończony protokół TLS w systemie równoważenia obciążenia. Następnie określasz port używany wapigee-sso
na potrzeby żądań z systemu równoważenia obciążenia. - SSL_TERMINATION: włączono dostęp TLS do portu
apigee-sso
na wybranym porcie. W tym trybie musisz określić magazyn kluczy zawierający certyfikat podpisany przez urzęd certyfikacji. Nie możesz używać certyfikatu podpisanego samodzielnie.
Protokół HTTPS możesz włączyć podczas początkowej instalacji i konfiguracji apigee-sso
albo później.
Włączenie dostępu HTTPS do zasobu apigee-sso
w jednym z tych trybów wyłącza dostęp HTTP. Oznacza to, że nie możesz uzyskać dostępu do apigee-sso
jednocześnie przez HTTP i HTTPS.
Włącz tryb SSL_PROXY
W trybie SSL_PROXY
Twój system używa systemu równoważenia obciążenia przed modułem logowania jednokrotnego Apigee i zamyka protokół TLS w systemie równoważenia obciążenia. Na poniższym przykładzie system równoważenia obciążenia wyłącza TLS na porcie 443, a następnie przekierowuje żądania do modułu logowania jednokrotnego Apigee na porcie 9099:
W tej konfiguracji ufasz połączeniu między systemem równoważenia obciążenia a modułem logowania jednokrotnego Apigee, więc nie trzeba używać TLS w przypadku tego połączenia. Jednak jednostki zewnętrzne, takie jak dostawca tożsamości, teraz muszą mieć dostęp do modułu logowania jednokrotnego Apigee przez port 443, a nie przez niechroniony port 9099.
Moduł logowania jednokrotnego w Apigee musi być skonfigurowany w trybie SSL_PROXY
, ponieważ w ramach procesu uwierzytelniania moduł logowania jednokrotnego w Apigee automatycznie generuje przekierowania używane zewnętrznie przez dostawcę tożsamości. Dlatego te przekierowania muszą zawierać numer zewnętrznego portu w systemie równoważenia obciążenia 443 w tym przykładzie, a nie port wewnętrzny w module logowania jednokrotnego Apigee 9099.
Aby skonfigurować moduł logowania jednokrotnego Apigee pod kątem trybu SSL_PROXY
:
- Dodaj do pliku konfiguracyjnego te ustawienia:
# Enable SSL_PROXY mode. SSO_TOMCAT_PROFILE=SSL_PROXY # Specify the apigee-sso port, typically between 1025 and 65535. # Typically ports 1024 and below require root access by apigee-sso. # The default is 9099. SSO_TOMCAT_PORT=9099 # Specify the port number on the load balancer for terminating TLS. # This port number is necessary for apigee-sso to auto-generate redirect URLs. SSO_TOMCAT_PROXY_PORT=443 SSO_PUBLIC_URL_PORT=443 # Set public access scheme of apigee-sso to https. SSO_PUBLIC_URL_SCHEME=https
- Skonfiguruj moduł logowania jednokrotnego w Apigee:
/opt/apigee/apigee-service/bin/apigee-service apigee-sso setup -f configFile
- Zaktualizuj konfigurację dostawcy tożsamości, aby wysyłać żądanie HTTPS przez port 443 systemu równoważenia obciążenia w celu uzyskania dostępu do logowania jednokrotnego w Apigee. Więcej informacji znajdziesz w tych artykułach:
- Zaktualizuj konfigurację interfejsu Edge dla HTTPS przez ustawienie tych właściwości w pliku konfiguracyjnym:
SSO_PUBLIC_URL_PORT=443 SSO_PUBLIC_URL_SCHEME=https
Następnie zaktualizuj interfejs Edge:
/opt/apigee/apigee-service/bin/apigee-service edge-management-ui configure-sso -f configFile
W klasycznym interfejsie użyj komponentu
edge-ui
. - Jeśli masz zainstalowany portal Apigee Developer Services (lub po prostu portal), zaktualizuj go, aby używać protokołu HTTPS do uzyskiwania dostępu do logowania jednokrotnego Apigee. Więcej informacji znajdziesz w artykule o konfigurowaniu portalu pod kątem używania zewnętrznych dostawców tożsamości.
Więcej informacji znajdziesz w artykule Włączanie zewnętrznego dostawcy tożsamości w interfejsie Edge.
Włącz tryb SSL_TERMINATION
W przypadku trybu SSL_TERMINATION
musisz:
- Wygeneruj certyfikat i klucz TLS oraz zapisz je w pliku magazynu kluczy. Nie możesz użyć certyfikatu podpisanego samodzielnie. Musisz wygenerować certyfikat z urzędu certyfikacji.
- Zaktualizuj ustawienia konfiguracji instancji
apigee-sso.
Aby utworzyć plik magazynu kluczy na podstawie certyfikatu i klucza:
- Utwórz katalog dla pliku JKS:
sudo mkdir -p /opt/apigee/customer/application/apigee-sso/tomcat-ssl/
- Przejdź do nowego katalogu:
cd /opt/apigee/customer/application/apigee-sso/tomcat-ssl/
- Utwórz plik JKS zawierający certyfikat i klucz. W tym trybie musisz określić magazyn kluczy zawierający certyfikat podpisany przez urząd certyfikacji. Nie możesz używać samodzielnie podpisanego certyfikatu. Przykład tworzenia pliku JKS znajdziesz w artykule o konfigurowaniu TLS/SSL dla przeglądarki Edge On.
- Ustaw plik JKS na własność użytkownika „apigee”:
sudo chown -R apigee:apigee /opt/apigee/customer/application/apigee-sso/tomcat-ssl
Aby skonfigurować moduł logowania jednokrotnego w Apigee:
- Dodaj do pliku konfiguracyjnego te ustawienia:
# Enable SSL_TERMINATION mode. SSO_TOMCAT_PROFILE=SSL_TERMINATION # Specify the path to the keystore file. SSO_TOMCAT_KEYSTORE_FILEPATH=/opt/apigee/customer/application/apigee-sso/tomcat-ssl/keystore.jks SSO_TOMCAT_KEYSTORE_ALIAS=sso # The password specified when you created the keystore. SSO_TOMCAT_KEYSTORE_PASSWORD=keystorePassword # Specify the HTTPS port number between 1025 and 65535. # Typically ports 1024 and below require root access by apigee-sso. # The default is 9099. SSO_TOMCAT_PORT=9443 SSO_PUBLIC_URL_PORT=9443 # Set public access scheme of apigee-sso to https. SSO_PUBLIC_URL_SCHEME=https
- Skonfiguruj moduł logowania jednokrotnego w Apigee:
/opt/apigee/apigee-service/bin/apigee-service apigee-sso setup -f configFile
- Zaktualizuj konfigurację dostawcy tożsamości, aby wysyłać żądanie HTTPS przez port 9443 systemu równoważenia obciążenia w celu uzyskania dostępu do logowania jednokrotnego w Apigee. Upewnij się, że z tego portu nie korzysta żadna inna usługa.
Więcej informacji znajdziesz w tych artykułach:
- Zaktualizuj konfigurację interfejsu Edge dla HTTPS przez ustawienie tych właściwości:
SSO_PUBLIC_URL_PORT=9443 SSO_PUBLIC_URL_SCHEME=https
- Jeśli masz zainstalowany portal usług dla programistów, zaktualizuj go, aby używać protokołu HTTPS do uzyskiwania dostępu do logowania jednokrotnego w Apigee. Więcej informacji znajdziesz w artykule o konfigurowaniu portalu pod kątem używania zewnętrznych dostawców tożsamości.
Ustaw SSO_TOMCAT_PROXY_PORT w trybie SSL_TERMINATION
Przed modułem logowania jednokrotnego w Apigee możesz umieścić system równoważenia obciążenia, który wyłącza TLS w systemie równoważenia obciążenia, ale jednocześnie włącza protokół TLS między systemem równoważenia obciążenia a funkcją logowania jednokrotnego w Apigee. Na ilustracji powyżej dla trybu SSL_PROXY
oznacza to, że połączenie między systemem równoważenia obciążenia a funkcją logowania jednokrotnego w Apigee używa protokołu TLS.
W tym scenariuszu konfigurujesz TLS w Apigee SSO tak jak powyżej w trybie SSL_TERMINATION
. Jeśli jednak system równoważenia obciążenia używa innego numeru portu TLS niż logowanie jednokrotne przez Apigee dla TLS, musisz również określić właściwość SSO_TOMCAT_PROXY_PORT
w pliku konfiguracji. Na przykład:
- System równoważenia obciążenia zamyka protokół TLS przez port 443
- Logowanie jednokrotne Apigee kończy działanie TLS przez port 9443
Pamiętaj, aby w pliku konfiguracyjnym umieścić to ustawienie:
# Specify the port number on the load balancer for terminating TLS. # This port number is necessary for apigee-sso to generate redirect URLs. SSO_TOMCAT_PROXY_PORT=443 SSO_PUBLIC_URL_PORT=443
Skonfiguruj dostawcę tożsamości i interfejs użytkownika Edge pod kątem wysyłania żądań HTTPS przez port 443.