Skonfiguruj apigee-sso pod kątem dostępu przez HTTPS

Edge for Private Cloud w wersji 4.18.05

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

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 w trybie proxy, co oznacza, że masz zainstalowano system równoważenia obciążenia przed domeną apigee-sso i zakończył(a) protokół TLS na obciążeniu systemu równoważenia obciążenia. Następnie określasz port używany w apigee-sso dla żądań z obciążenia. systemu równoważenia obciążenia.
  • SSL_TERMINATION – włączony dostęp TLS dla apigee-sso, moduł Edge SSO, przez wybrany port. Dla tego trybu musisz określić magazyn kluczy zawierający certyfikat podpisany przez Urząd certyfikacji. Nie możesz używać samodzielnie podpisanego certyfikatu.

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 używa systemu równoważenia obciążenia przed modułem Edge SSO i wyłącza 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ł Edge SSO na porcie 9099:

W tej konfiguracji ufasz połączeniu między systemem równoważenia obciążenia a modułem Edge SSO więc nie musisz używać TLS. Jednostki zewnętrzne, takie jak SAML, Dostawca tożsamości musi teraz uzyskiwać dostęp do modułu Edge SSO na porcie 443, a nie na niezabezpieczonym porcie 9099.

Moduł Edge SSO w trybie SSL_PROXY jest konfigurowany dlatego, że moduł Edge SSO automatycznie generuje adresy URL przekierowania używane zewnętrznie przez dostawcę tożsamości w ramach procesu uwierzytelniania. Dlatego te przekierowania muszą zawierać numer zewnętrznego portu w systemie równoważenia obciążenia (443 w w tym przykładzie, a nie wewnętrzny port 9099 modułu Edge SSO.

Uwaga: nie musisz tworzyć certyfikatu ani klucza TLS dla tryb SSL_PROXY, ponieważ połączenie między systemem równoważenia obciążenia a modułem Edge SSO korzysta z protokołu HTTP.

Aby skonfigurować moduł Edge SSO 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ł Edge SSO:
    /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 systemu równoważenia obciążenia w celu uzyskania dostępu do Edge SSO. Zobacz Konfigurowanie SAML dostawcy tożsamości.
  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-ui configure-sso -f configFile

    Więcej informacji znajdziesz w artykule Włączanie SAML w interfejsie Edge.

  5. Jeśli masz zainstalowany portal usług Apigee dla programistów (lub po prostu portal), zaktualizuj go tak, aby używał protokołu HTTPS dostęp do Ede SSO. Więcej informacji: Konfigurowanie portalu do komunikacji z Edge przy użyciu SAML

Włącz tryb SSL_TERMINATION

W przypadku trybu SSL_TERMINATION musisz:

  • Wygenerowanie certyfikatu i klucza TLS oraz zapisanie ich 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ł Edge SSO:

  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ł Edge SSO:
    /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 systemu równoważenia obciążenia w celu uzyskania dostępu do Edge SSO. Zobacz Konfigurowanie SAML dostawcy tożsamości.
  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

    Więcej informacji znajdziesz w artykule Włączanie SAML w interfejsie Edge.

  5. Jeśli portal usług dla deweloperów został zainstalowany, zaktualizuj go, aby używał protokołu HTTPS dostęp do Ede SSO. Więcej informacji znajdziesz w sekcji Konfigurowanie portal usług dla deweloperów, w którym można używać SAML do komunikowania się z Edge.

Ustawianie SSO_TOMCAT_PROXY_PORT w trybie SSL_TERMINATION

Możesz mieć system równoważenia obciążenia przed modułem Edge SSO, który wyłącza TLS podczas wczytywania , a także włączyć protokół TLS między systemem równoważenia obciążenia a usługą Edge SSO. Na ilustracji powyżej w trybie SSL_PROXY oznacza to, że połączenie między systemem równoważenia obciążenia a Edge SSO korzysta TLS.

W tym scenariuszu konfigurujesz protokół TLS w Edge 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 na brzegu sieci dla protokołu TLS. Musisz też określić 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 na Edge wyłącza 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.