В статье Как установить и настроить систему единого входа Apigee описывается, как установить и настроить модуль системы единого входа Apigee для использования HTTP на порту 9099, как указано в следующем свойстве в файле конфигурации Edge:
SSO_TOMCAT_PROFILE=DEFAULT
Вы также можете задать для параметра SSO_TOMCAT_PROFILE одно из следующих значений, чтобы включить доступ по HTTPS:
- SSL_PROXY: настраивает
apigee-sso, модуль SSO Apigee, в режиме прокси. Это означает, что вы установили балансировщик нагрузки передapigee-ssoи завершили TLS на балансировщике нагрузки. Затем вы указываете порт, используемый наapigee-ssoдля запросов от балансировщика нагрузки. - SSL_TERMINATION: включен доступ по TLS к
apigee-ssoчерез выбранный порт. Для этого режима необходимо указать хранилище ключей, содержащее сертификат, подписанный центром сертификации. Самозаверяющий сертификат использовать нельзя.
Вы можете включить HTTPS при установке и настройке apigee-sso или позже.
Если включить доступ к apigee-sso по протоколу HTTPS в любом режиме, доступ по протоколу HTTP будет отключен. Это означает, что вы не можете одновременно использовать протоколы HTTP и HTTPS для доступа к apigee-sso.
Включить режим SSL_PROXY
В режиме SSL_PROXY система использует балансировщик нагрузки перед модулем системы единого входа Apigee и завершает TLS на балансировщике нагрузки. На следующем рисунке балансировщик нагрузки завершает TLS на порту 443, а затем перенаправляет запросы в модуль Apigee SSO на порт 9099:

В этой конфигурации вы доверяете подключению от балансировщика нагрузки к модулю Apigee SSO, поэтому использовать TLS для этого подключения не нужно. Однако внешние объекты, такие как IDP, теперь должны обращаться к модулю Apigee SSO через порт 443, а не через незащищенный порт 9099.
Причина, по которой модуль Apigee SSO настраивается в режиме SSL_PROXY, заключается в том, что он автоматически генерирует URL переадресации, используемые поставщиком идентификационной информации в процессе аутентификации. Поэтому эти URL перенаправления должны содержать номер внешнего порта на балансировщике нагрузки (в данном примере – 443), а не номер внутреннего порта в модуле Apigee SSO (9099).
Чтобы настроить модуль Apigee SSO для режима SSL_PROXY:
- Добавьте в файл конфигурации следующие настройки:
# 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
- Настройте модуль Apigee SSO:
/opt/apigee/apigee-service/bin/apigee-service apigee-sso setup -f configFile
- Обновите конфигурацию поставщика идентификационной информации, чтобы он отправлял HTTPS-запрос на порт 443 балансировщика нагрузки для доступа к системе единого входа Apigee. Дополнительную информацию можно найти в следующих статьях:
- Обновите конфигурацию Edge UI для HTTPS, задав в файле конфигурации следующие свойства:
SSO_PUBLIC_URL_PORT=443 SSO_PUBLIC_URL_SCHEME=https
Затем обновите пользовательский интерфейс Edge:
/opt/apigee/apigee-service/bin/apigee-service edge-management-ui configure-sso -f configFile
Используйте компонент
edge-uiдля классического интерфейса. - Если вы установили портал Apigee Developer Services (или просто портал), обновите его, чтобы использовать HTTPS для доступа к системе единого входа Apigee. Подробнее о том, как настроить портал для использования внешних поставщиков идентификационной информации…
Подробную информацию можно найти в статье Как включить внешний поставщик идентификационной информации в интерфейсе Edge.
Включить режим SSL_TERMINATION
Для режима SSL_TERMINATION необходимо:
- Сгенерируйте сертификат и ключ TLS и сохраните их в файле хранилища ключей. Самозаверяющий сертификат использовать нельзя. Сертификат должен быть создан центром сертификации.
- Обновите настройки конфигурации для
apigee-sso.
Чтобы создать файл хранилища ключей из сертификата и ключа:
- Создайте каталог для файла JKS:
sudo mkdir -p /opt/apigee/customer/application/apigee-sso/tomcat-ssl/
- Перейдите в новый каталог:
cd /opt/apigee/customer/application/apigee-sso/tomcat-ssl/
- Создайте файл JKS, содержащий сертификат и ключ. Для этого режима необходимо указать хранилище ключей, содержащее сертификат, подписанный центром сертификации. Самозаверяющий сертификат использовать нельзя. Пример создания файла JKS приведен в статье Настройка TLS/SSL для Edge On Premises.
- Сделайте пользователя apigee владельцем файла JKS:
sudo chown -R apigee:apigee /opt/apigee/customer/application/apigee-sso/tomcat-ssl
Чтобы настроить модуль SSO Apigee, выполните следующие действия:
- Добавьте в файл конфигурации следующие настройки:
# 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
- Настройте модуль Apigee SSO:
/opt/apigee/apigee-service/bin/apigee-service apigee-sso setup -f configFile
- Обновите конфигурацию поставщика идентификационной информации, чтобы он отправлял HTTPS-запрос на порт 9443 балансировщика нагрузки для доступа к системе единого входа Apigee. Убедитесь, что этот порт не используется другими сервисами.
Дополнительную информацию можно найти в следующих статьях:
- Обновите конфигурацию Edge UI для HTTPS, задав следующие свойства:
SSO_PUBLIC_URL_PORT=9443 SSO_PUBLIC_URL_SCHEME=https
- Если вы установили портал Developer Services, обновите его, чтобы использовать HTTPS для доступа к Apigee SSO. Подробнее о том, как настроить портал для использования внешних поставщиков идентификационной информации…
Задайте SSO_TOMCAT_PROXY_PORT при использовании режима SSL_TERMINATION
Перед модулем системы единого входа Apigee может находиться балансировщик нагрузки, который завершает TLS на балансировщике нагрузки, но также включает TLS между балансировщиком нагрузки и системой единого входа Apigee. На рисунке выше для режима SSL_PROXY это означает, что подключение от балансировщика нагрузки к Apigee SSO использует TLS.
В этом сценарии вы настраиваете TLS в Apigee SSO так же, как и выше для режима SSL_TERMINATION. Однако если балансировщик нагрузки использует номер порта TLS, отличный от того, который используется для TLS в Apigee SSO, необходимо также указать свойство SSO_TOMCAT_PROXY_PORT в файле конфигурации. Пример:
- Балансировщик нагрузки завершает TLS на порту 443.
- Система единого входа Apigee завершает TLS на порту 9443.
Добавьте в файл конфигурации следующую настройку:
# 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
Настройте поставщика идентификационной информации и интерфейс Edge для отправки HTTPS-запросов через порт 443.