Konfigurowanie logowania jednokrotnego w Apigee pod kątem dostępu HTTPS

W artykule Instalowanie i konfigurowanie logowania jednokrotnego Apigee dowiesz się, jak to zrobić. aby zainstalować i skonfigurować moduł logowania jednokrotnego Apigee do używania protokołu HTTP na porcie 9099 zgodnie z opisem tę właściwość w pliku konfiguracji Edge:

SSO_TOMCAT_PROFILE=DEFAULT

Możesz też ustawić SSO_TOMCAT_PROFILE na jedną z tych wartości włącz dostęp przez HTTPS:

  • SSL_PROXY: konfiguruje apigee-sso, moduł logowania jednokrotnego Apigee w trybie proxy, co oznacza, że masz zainstalowany system równoważenia obciążenia przed serwerem apigee-sso i zamknęliśmy protokół TLS w systemie równoważenia obciążenia. Następnie określasz port używany na apigee-sso dla żądań z systemu równoważenia obciążenia.
  • SSL_TERMINATION: włączono dostęp TLS do protokołu apigee-sso w przez wybrany port. W tym trybie musisz określić magazyn kluczy, który zawiera certyfikat podpisany przez CA. Nie możesz używać certyfikatu podpisanego samodzielnie.

Możesz włączyć HTTPS podczas pierwszej instalacji i konfiguracji apigee-sso. Możesz też włączyć ją później.

Włączenie dostępu HTTPS do apigee-sso w jednym z tych trybów powoduje wyłączenie HTTP dostęp. Oznacza to, że nie możesz uzyskać dostępu do strony apigee-sso zarówno przy użyciu protokołu HTTP, jak i HTTPS jednocześnie.

Włącz tryb SSL_PROXY

W trybie SSL_PROXY system korzysta z systemu równoważenia obciążenia przed modułem logowania jednokrotnego Apigee i kończy protokół TLS w systemie równoważenia obciążenia. W zgodnie z poniższym wykresem system równoważenia obciążenia kończy działanie TLS na porcie 443 i przekierowuje żądania do Moduł logowania jednokrotnego Apigee na porcie 9099:

W tej konfiguracji masz zaufanie do połączenia systemu równoważenia obciążenia z modułem logowania jednokrotnego Apigee, więc nie musisz używać TLS. Podmioty zewnętrzne, takie jak dostawca tożsamości, teraz musi uzyskać dostęp do modułu logowania jednokrotnego Apigee na porcie 443, a nie na niezabezpieczonym porcie 9099.

Moduł logowania jednokrotnego Apigee w trybie SSL_PROXY warto skonfigurować dlatego, że logowanie jednokrotne w Apigee moduł automatycznie generuje przekierowania używane zewnętrznie przez dostawcę tożsamości w ramach uwierzytelniania proces tworzenia konta. Dlatego te przekierowania muszą zawierać wczytywanym zewnętrznym numerze portu. systemu równoważenia obciążenia 443, a nie portu wewnętrznego w module Apigee SSO 9099.

Aby skonfigurować moduł logowania jednokrotnego Apigee w trybie SSL_PROXY:

  1. Dodaj do pliku konfiguracji 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
  2. Skonfiguruj moduł logowania jednokrotnego Apigee:
    /opt/apigee/apigee-service/bin/apigee-service apigee-sso setup -f configFile
  3. Zaktualizuj konfigurację dostawcy tożsamości, aby wysyłać żądania HTTPS na port 443 obciążenia System równoważenia obciążenia umożliwiający dostęp do logowania jednokrotnego Apigee. Więcej informacji znajdziesz w tych artykułach:
  4. Zaktualizuj konfigurację interfejsu Edge pod kątem protokołu HTTPS, ustawiając w pliku konfiguracji te właściwości:
    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.

  5. Jeśli masz zainstalowany portal usług dla deweloperów Apigee (lub po prostu portal), zaktualizuj go tak, aby używał HTTPS, aby uzyskiwać dostęp do logowania jednokrotnego Apigee. Dla: więcej informacji znajdziesz w Konfigurowanie portalu pod kątem korzystania z zewnętrznych dostawców tożsamości

Zapoznaj się z sekcją Włączanie zewnętrznego dostawcy tożsamości w interfejsie Edge, aby dowiedzieć się więcej. znajdziesz więcej informacji.

Włącz tryb SSL_TERMINATION

W przypadku trybu SSL_TERMINATION musisz:

  • Wygenerować certyfikat i klucz TLS oraz zapisać je w pliku magazynu kluczy. Nie można użyć samodzielnie podpisanym certyfikatem. Certyfikat musisz wygenerować z urzędu certyfikacji.
  • Zaktualizuj ustawienia konfiguracji usługi apigee-sso.

Aby utworzyć plik magazynu kluczy na podstawie certyfikatu i klucza:

  1. Utwórz katalog na plik JKS:
    sudo mkdir -p /opt/apigee/customer/application/apigee-sso/tomcat-ssl/
  2. Przejdź do nowego katalogu:
    cd /opt/apigee/customer/application/apigee-sso/tomcat-ssl/
  3. Utwórz plik JKS zawierający certyfikat i klucz. Musisz określić magazyn kluczy dla tego trybu zawierający certyfikat podpisany przez urząd certyfikacji. Nie możesz używać samodzielnie podpisanego certyfikatu. Na przykład: podczas tworzenia pliku JKS znajdziesz w sekcji Konfigurowanie TLS/SSL dla Edge On Premises.
  4. Ustaw plik JKS jako należący do „apigee” użytkownik:
    sudo chown -R apigee:apigee /opt/apigee/customer/application/apigee-sso/tomcat-ssl

Aby skonfigurować moduł logowania jednokrotnego Apigee:

  1. Dodaj do pliku konfiguracji 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
  2. Skonfiguruj moduł logowania jednokrotnego Apigee:
    /opt/apigee/apigee-service/bin/apigee-service apigee-sso setup -f configFile
  3. Zaktualizuj konfigurację dostawcy tożsamości, aby wysyłać żądania HTTPS na port 9443 obciążenia System równoważenia obciążenia umożliwiający dostęp do logowania jednokrotnego Apigee. Upewnij się, że z tego portu nie korzysta żadna inna usługa.

    Więcej informacji:

  4. Zaktualizuj konfigurację interfejsu Edge pod kątem protokołu HTTPS, ustawiając te właściwości:
    SSO_PUBLIC_URL_PORT=9443
    SSO_PUBLIC_URL_SCHEME=https
  5. Jeśli portal usług dla deweloperów został zainstalowany, zaktualizuj go, aby używał protokołu HTTPS dostęp do Apigee SSO. Więcej informacji: Skonfiguruj portal pod kątem zewnętrznych dostawców tożsamości.

Ustaw SSO_TOMCAT_PROXY_PORT w trybie SSL_TERMINATION

Możesz mieć system równoważenia obciążenia przed modułem logowania jednokrotnego Apigee, który wyłącza protokół TLS podczas obciążenia oraz włącza też protokół TLS między systemem równoważenia obciążenia a logowaniem jednokrotnym w Apigee. Na ilustracji powyżej w trybie SSL_PROXY oznacza to, że połączenie systemu równoważenia obciążenia z Apigee SSO korzysta TLS.

W tym scenariuszu konfigurujesz protokół TLS w Apigee SSO tak samo jak w przypadku Tryb SSL_TERMINATION. Jeśli jednak obciążenie System równoważenia obciążenia używa innego numeru portu TLS niż logowanie jednokrotne używane przez Apigee dla protokołu TLS. Musisz też podać właściwość SSO_TOMCAT_PROXY_PORT w pliku konfiguracyjnym. Na przykład:

  • System równoważenia obciążenia zamyka TLS na porcie 443
  • Logowanie jednokrotne w Apigee kończy protokół TLS na porcie 9443

Pamiętaj, aby w pliku konfiguracji 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

Konfiguruje dostawcę tożsamości i interfejs użytkownika Edge tak, aby wysyłał żądania HTTPS na porcie 443.