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

В этой конфигурации вы доверяете подключению от балансировщика нагрузки к модулю Edge SSO, поэтому использовать TLS для этого подключения не нужно. Однако внешние объекты, такие как поставщик идентификационной информации SAML, теперь должны обращаться к модулю SSO Edge через порт 443, а не через незащищенный порт 9099.
Причина, по которой модуль Edge SSO настраивается в режиме SSL_PROXY, заключается в том, что модуль Edge SSO автоматически генерирует URL переадресации, используемые внешне поставщиком идентификационной информации в рамках процесса аутентификации. Поэтому эти URL перенаправления должны содержать номер внешнего порта на балансировщике нагрузки (в этом примере – 443), а не номер внутреннего порта на модуле Edge SSO (9099).
Примечание. Вам не нужно создавать сертификат и ключ TLS для режима SSL_PROXY, поскольку для подключения балансировщика нагрузки к модулю Edge SSO используется HTTP.
Чтобы настроить модуль Edge SSO для режима SSL_PROXY:
- Добавьте в файл конфигурации следующие настройки:
# Enable SSL_PROXY mode.
SSO_TOMCAT_PROFILE=SSL_PROXY
# Укажите порт apigee-sso, обычно от 1025 до 65535.
# Обычно для портов 1024 и ниже требуется доступ с правами root со стороны apigee-sso.
# Значение по умолчанию – 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 - Настройте модуль Edge SSO:
> /opt/apigee/apigee-service/bin/apigee-service apigee-sso setup -f configFile - Обновите конфигурацию поставщика идентификационной информации, чтобы он отправлял HTTPS-запрос на порт 443 балансировщика нагрузки для доступа к Edge SSO. Подробнее о том, как настроить поставщика идентификационной информации SAML…
- Обновите конфигурацию Edge UI для HTTPS, задав следующие свойства:
SSO_PUBLIC_URL_PORT=443
SSO_PUBLIC_URL_SCHEME=https
Подробнее о том, как включить SAML в Edge UI… - Если вы установили портал Developer Services или API BaaS, настройте их так, чтобы они использовали HTTPS для доступа к системе единого входа 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.
- Сделайте файл JKS принадлежащим пользователю apigee:
> sudo chown -R apigee:apigee /opt/apigee/customer/application/apigee-sso/tomcat-ssl
Чтобы настроить модуль SSO Edge:
- Добавьте в файл конфигурации следующие настройки:
# Enable SSL_TERMINATION mode.
SSO_TOMCAT_PROFILE=SSL_TERMINATION
# Укажите путь к файлу хранилища ключей.
SSO_TOMCAT_KEYSTORE_FILEPATH=/opt/apigee/customer/application/apigee-sso/tomcat-ssl/keystore.jks
SSO_TOMCAT_KEYSTORE_ALIAS=sso
# Пароль, указанный при создании хранилища ключей.
SSO_TOMCAT_KEYSTORE_PASSWORD=keystorePassword
# Укажите номер порта HTTPS в диапазоне от 1025 до 65535.
# Обычно для портов 1024 и ниже требуется доступ с правами root со стороны apigee-sso.
# Значение по умолчанию – 9099.
SSO_TOMCAT_PORT=9443
SSO_PUBLIC_URL_PORT=9443
# Set public access scheme of apigee-sso to https.
SSO_PUBLIC_URL_SCHEME=https - Настройте модуль Edge SSO:
> /opt/apigee/apigee-service/bin/apigee-service apigee-sso setup -f configFile - Обновите конфигурацию поставщика идентификационной информации, чтобы он отправлял HTTPS-запрос на порт 9443 балансировщика нагрузки для доступа к системе единого входа Edge. Подробнее о том, как настроить поставщика идентификационной информации SAML…
- Обновите конфигурацию Edge UI для HTTPS, задав следующие свойства:
SSO_PUBLIC_URL_PORT=9443
SSO_PUBLIC_URL_SCHEME=https
Подробнее о том, как включить SAML в Edge UI… - Если вы установили портал Developer Services или API BaaS, настройте их так, чтобы они использовали HTTPS для доступа к системе единого входа Edge. Дополнительную информацию можно найти в следующих статьях:
Настройка SSO_TOMCAT_PROXY_PORT при использовании режима SSL_TERMINATION
Перед модулем Edge SSO может находиться балансировщик нагрузки, который завершает TLS на балансировщике нагрузки, но также включает TLS между балансировщиком нагрузки и Edge SSO. На рисунке выше для режима SSL_PROXY это означает, что для подключения от балансировщика нагрузки к Edge SSO используется TLS.
В этом сценарии вы настраиваете TLS в Edge SSO так же, как и выше для режима SSL_TERMINATION. Однако если балансировщик нагрузки использует номер порта TLS, отличный от того, который используется Edge SSO для TLS, необходимо также указать свойство SSO_TOMCAT_PROXY_PORT в файле конфигурации. Пример:
- Балансировщик нагрузки завершает TLS на порту 443.
- Edge SSO завершает TLS на порту 9443
Добавьте в файл конфигурации следующую настройку:
# Укажите номер порта
на балансировщике нагрузки для завершения 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.