Общие сведения об аутентификации с помощью внешнего поставщика идентификационной информации (новый интерфейс Edge)

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

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

Edge поддерживает использование следующих внешних поставщиков идентификационной информации для аутентификации:

  • Security Assertion Markup Language (SAML) 2.0. Создавайте токены доступа OAuth на основе утверждений SAML, возвращаемых поставщиком идентификационной информации SAML.
  • Lightweight Directory Access Protocol (LDAP). Используйте методы аутентификации LDAP "Поиск и привязка" или "Простая привязка", чтобы генерировать токены доступа OAuth.

Поставщики идентификационной информации SAML и LDAP поддерживают среду системы единого входа. Используя внешний IDP с Edge, вы можете поддерживать SSO для Edge UI и API в дополнение к любым другим сервисам, которые вы предоставляете и которые также поддерживают ваш внешний IDP.

Инструкции в этом разделе по включению поддержки внешнего поставщика идентификационной информации отличаются от инструкций по внешней аутентификации следующим образом:

  • В этом разделе добавляется поддержка системы единого входа.
  • Этот раздел предназначен для пользователей интерфейса Edge (не классического интерфейса).
  • Этот раздел поддерживается только в версии 4.19.06 и более поздних.

О системе единого входа Apigee

Чтобы обеспечить поддержку SAML или LDAP в Edge, установите apigee-sso – модуль Apigee SSO. На изображении ниже показана система единого входа Apigee в Edge для установки Private Cloud.

Использование портов для Apigee SSO

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

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

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

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

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

О SAML

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

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

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

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

Об LDAP

LDAP (Lightweight Directory Access Protocol) – это открытый отраслевой стандартный протокол приложений для доступа к распределенным службам каталогов и управления ими. Службы каталогов могут предоставлять любой упорядоченный набор записей, часто с иерархической структурой, например корпоративный каталог электронной почты.

Для аутентификации LDAP в Apigee SSO используется модуль Spring Security LDAP. В результате способы аутентификации и параметры конфигурации для поддержки LDAP в системе единого входа Apigee напрямую связаны с теми, которые используются в Spring Security LDAP.

LDAP с Edge для частного облака поддерживает следующие способы аутентификации на LDAP-совместимом сервере:

  • Поиск и привязка (косвенная привязка)
  • Простая привязка (прямая привязка)

Система единого входа Apigee пытается получить адрес электронной почты пользователя и обновить его внутреннюю запись пользователя, чтобы в файле был текущий адрес электронной почты, поскольку Edge использует этот адрес для авторизации.

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

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

http://edge_UI_IP_DNS:9000
https://edge_UI_IP_DNS:9000

где edge_UI_IP_DNS – IP-адрес или DNS-имя компьютера, на котором размещен интерфейс Edge. При настройке 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 в Apigee SSO

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

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

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

Включить поддержку внешнего поставщика идентификационной информации для портала

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

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

Процесс запроса и ответа с токенами