Поддержка SAML в Edge для частного облака

Edge for Private Cloud 4.19.01

Пользовательский интерфейс Edge и Management API Edge отправляют запросы к серверу управления Edge, который поддерживает следующие типы аутентификации:

  • Базовая аутентификация. Войдите в интерфейс Edge или отправьте запросы в API управления Edge, указав имя пользователя и пароль.
  • OAuth2 Обменяйте учетные данные базовой аутентификации Edge на токен доступа и токен обновления OAuth2. Выполняйте вызовы к Edge Management API, передавая токен доступа OAuth2 в заголовке Bearer вызова API.

Edge также поддерживает язык разметки декларации безопасности (SAML) 2.0 в качестве механизма аутентификации. При включенном SAML доступ к Edge UI и Edge management API по-прежнему использует токены доступа OAuth2. Однако теперь вы можете генерировать эти токены из утверждений SAML, возвращаемых поставщиком идентификационной информации SAML.

SAML поддерживает среду системы единого входа (SSO). Используя SAML с Edge, вы можете поддерживать SSO для пользовательского интерфейса и API Edge в дополнение к любым другим предоставляемым вами сервисам, которые также поддерживают SAML.

Добавлена поддержка OAuth2 для Edge for Private Cloud

Как упоминалось выше, реализация SAML в Edge зависит от токенов доступа OAuth2.Поэтому поддержка OAuth2 была добавлена в Edge для частного облака. Подробнее о протоколе OAuth 2.0…

Преимущества SAML

Аутентификация SAML имеет несколько преимуществ. SAML позволяет:

  • Получите полный контроль над управлением пользователями. Когда пользователи покидают организацию и их аккаунты деинициализируются централизованно, они автоматически теряют доступ к Edge.
  • Укажите, как пользователи должны проходить аутентификацию для доступа к Edge. Вы можете выбрать разные типы аутентификации для разных организаций Edge.
  • Управление правилами аутентификации. Ваш поставщик SAML может поддерживать правила аутентификации, которые больше соответствуют стандартам вашей организации.
  • Вы можете отслеживать входы, выходы, неудачные попытки входа и действия с высоким риском в развертывании Edge.

Использование SAML с Edge

Чтобы обеспечить поддержку SAML в Edge, установите модуль единого входа Edge apigee-sso. На следующем изображении показана система единого входа Edge в установке Edge для частного облака:

Вы можете установить модуль Edge SSO на том же узле, что и Edge UI и Management Server, или на отдельном узле. Убедитесь, что у Edge SSO есть доступ к серверу управления через порт 8080.

Порт 9099 должен быть открыт на узле Edge SSO, чтобы поддерживать доступ к Edge SSO из браузера, от внешнего поставщика идентификационной информации SAML, а также от сервера управления и пользовательского интерфейса Edge. При настройке системы единого входа Edge вы можете указать, что внешнее подключение использует протокол HTTP или зашифрованный протокол HTTPS.

Edge SSO использует базу данных Postgres, доступную через порт 5432 на узле Postgres. Обычно можно использовать тот же сервер Postgres, который вы установили с Edge, – либо отдельный сервер Postgres, либо два сервера Postgres, настроенных в режиме "основной/резервный". Если нагрузка на сервер Postgres высока, вы также можете создать отдельный узел Postgres только для Edge SSO.

Если SAML включен, доступ к Edge UI и Edge management API осуществляется с помощью токенов доступа OAuth2. Эти токены генерируются модулем Edge SSO, который принимает утверждения SAML, возвращаемые вашим поставщиком идентификационной информации.

После создания из утверждения SAML токен OAuth действителен в течение 30 минут, а токен обновления – в течение 24 часов. Ваша среда разработки может поддерживать автоматизацию распространенных задач, таких как автоматизация тестирования или непрерывная интеграция/непрерывное развертывание (CI/CD), для которых требуются токены с более длительным сроком действия. Подробнее о том, как использовать SAML с автоматизированными задачами…

URL интерфейса и API Edge

URL, который вы используете для доступа к Edge UI и Edge Management API, не изменился после включения SAML. В интерфейсе Edge:

http://edge_ui_IP_DNS:9000
https://edge_ui_IP_DNS:9000

где edge_ui_IP_DNS – IP-адрес или DNS-имя компьютера, на котором размещен Edge UI. При настройке Edge UI можно указать, что подключение должно использовать протокол HTTP или зашифрованный протокол HTTPS.

Для Edge Management API:

http://ms_IP_DNS:8080/v1
https://ms_IP_DNS:8080/v1

где ms_IP_DNS – IP-адрес или DNS-имя сервера управления. При настройке API вы можете указать, что подключение должно использовать протокол HTTP или зашифрованный протокол HTTPS.

Как настроить TLS в Edge SSO

По умолчанию для подключения к Edge SSO используется протокол HTTP через порт 9099 на узле, на котором размещен модуль Edge SSO apigee-sso. В apigee-sso встроен экземпляр Tomcat, который обрабатывает запросы HTTP и HTTPS.

Edge SSO и Tomcat поддерживают три режима подключения:

  • DEFAULT – конфигурация по умолчанию поддерживает HTTP-запросы через порт 9099.
  • SSL_TERMINATION – включен доступ TLS к Edge SSO через выбранный порт. Для этого режима необходимо указать ключ и сертификат TLS.
  • SSL_PROXY – настраивает Edge SSO в режиме прокси. Это означает, что вы установили балансировщик нагрузки перед apigee-sso и завершили TLS на балансировщике нагрузки. Вы можете указать порт, который будет использоваться в apigee-sso для запросов от балансировщика нагрузки.

Включите поддержку SAML для портала

После включения поддержки SAML для Edge вы можете включить SAML для портала Apigee Developer Services (или просто портала). Портал поддерживает аутентификацию SAML при отправке запросов в Edge. Обратите внимание, что это не то же самое, что аутентификация SAML для входа разработчика на портал. Аутентификация SAML для входа разработчиков настраивается отдельно. Подробнее о том, как настроить портал для использования SAML при взаимодействии с Edge…

При настройке портала необходимо указать URL модуля Edge SSO, установленного вместе с Edge: