Интерфейс Edge и API управления Edge работают, отправляя запросы на сервер управления Edge. Этот сервер поддерживает следующие типы аутентификации:
- Базовая аутентификация. Войдите в интерфейс Edge или отправьте запросы к API управления Edge, указав имя пользователя и пароль.
- OAuth2. Обменяйте учетные данные базовой аутентификации Edge на токен доступа и токен обновления OAuth2. Выполняйте вызовы к API управления Edge, передавая токен доступа OAuth2 в заголовке Bearer вызова API.
Edge поддерживает аутентификацию с помощью следующих внешних поставщиков идентификационной информации:
- SAML 2.0. Создавайте токены доступа OAuth на основе утверждений SAML, возвращаемых поставщиком идентификационной информации SAML.
- Протокол LDAP. Используйте методы аутентификации с помощью поиска и привязки или простой привязки LDAP, чтобы генерировать токены доступа OAuth.
Поставщики идентификационной информации на основе SAML и LDAP поддерживают среду единого входа. Используя внешний поставщик идентификационной информации с Edge, вы можете поддерживать SSO для интерфейса Edge и API, а также для любых других сервисов, которые вы предоставляете и которые также поддерживают вашего внешнего поставщика идентификационной информации.
Инструкции по включению поддержки внешнего поставщика идентификационной информации, приведенные в этом разделе, отличаются от инструкций по внешней аутентификации следующими особенностями:
- В этом разделе добавлена поддержка SSO
- Этот раздел предназначен для пользователей интерфейса Edge (не классического интерфейса)
- Этот раздел поддерживается только в версии 4.19.06 и более поздних.
О системе единого входа Apigee
Чтобы поддерживать SAML или LDAP в Edge, установите модуль Apigee SSO apigee-sso.
На изображении ниже показан Apigee SSO в установке Edge для частного облака:
Модуль Apigee SSO можно установить на том же узле, что и интерфейс Edge и сервер управления, или на отдельном узле. Убедитесь, что у Apigee SSO есть доступ к серверу управления через порт 8080.
Порт 9099 должен быть открыт на узле Apigee SSO, чтобы поддерживать доступ к Apigee SSO из браузера, внешнего поставщика идентификационной информации SAML или LDAP, а также с сервера управления и из интерфейса Edge. При настройке Apigee SSO можно указать, что внешнее подключение использует протокол HTTP или зашифрованный протокол HTTPS.
Apigee SSO использует базу данных Postgres, доступную через порт 5432 на узле Postgres. Обычно можно использовать тот же сервер Postgres, который вы установили вместе с Edge, – отдельный сервер Postgres или два сервера Postgres, настроенные в режиме "основной/резервный". Если нагрузка на сервер Postgres высокая, вы можете создать отдельный узел Postgres только для Apigee SSO.
Добавлена поддержка OAuth2 для Edge for Private Cloud
Как уже упоминалось, реализация SAML в Edge опирается на токены доступа OAuth2.Поэтому в Edge для частного облака добавлена поддержка OAuth2. Подробнее о протоколе OAuth 2.0…
О SAML
Аутентификация SAML имеет ряд преимуществ. Используя SAML, вы можете:
- Полностью контролируйте управление пользователями. Когда пользователи покидают организацию и их аккаунты централизованно удаляются, они автоматически теряют доступ к Edge.
- Управляйте тем, как пользователи проходят аутентификацию для доступа к Edge. Для разных организаций Edge можно выбрать разные типы аутентификации.
- Управляйте правилами аутентификации. Ваш поставщик SAML может поддерживать правила аутентификации, которые лучше соответствуют корпоративным стандартам.
- Вы можете отслеживать входы и выходы из системы, неудачные попытки входа и действия с высоким риском в развертывании Edge.
Если включена аутентификация SAML, для доступа к интерфейсу Edge и API управления Edge используются токены доступа OAuth2. Эти токены генерируются модулем Apigee SSO, который принимает утверждения SAML, возвращаемые поставщиком идентификационной информации.
После создания на основе утверждения SAML токен OAuth действителен в течение 30 минут, а токен обновления – 24 часов. Ваша среда разработки может поддерживать автоматизацию для распространенных задач, таких как автоматическое тестирование или непрерывная интеграция и непрерывная поставка (CI/CD), для которых требуются токены с более длительным сроком действия. Информацию о создании специальных токенов для автоматизированных задач можно найти в разделе Использование SAML с автоматизированными задачами.
О протоколе LDAP
Протокол LDAP – это открытый отраслевой стандартный протокол приложений для доступа к службам распределенного каталога и управления ими. Сервисы каталогов могут предоставлять любые упорядоченные наборы записей, часто с иерархической структурой, например корпоративный каталог электронной почты.
Для аутентификации LDAP в Apigee SSO используется модуль Spring Security LDAP. В результате методы аутентификации и параметры конфигурации для поддержки LDAP в Apigee SSO напрямую связаны с теми, которые используются в Spring Security LDAP.
LDAP с Edge для частного облака поддерживает следующие методы аутентификации на сервере, совместимом с LDAP:
- Поиск и привязка (косвенная привязка)
- Простое связывание (прямое связывание)
Apigee SSO пытается получить адрес электронной почты пользователя и обновить его внутреннюю запись, чтобы в файле был актуальный адрес электронной почты, поскольку Edge использует его для авторизации.
URL интерфейса Edge и API
URL, который вы используете для доступа к интерфейсу Edge и API управления Edge, не меняется после включения SAML или LDAP. Для интерфейса Edge:
http://edge_UI_IP_DNS:9000 https://edge_UI_IP_DNS:9000
где edge_UI_IP_DNS – это IP-адрес или имя DNS машины, на которой размещен интерфейс Edge. При настройке интерфейса Edge можно указать, что подключение должно использовать 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 SSO использует HTTP через порт 9099 на узле, на котором размещен модуль Apigee SSO apigee-sso. В apigee-sso встроен экземпляр Tomcat, который обрабатывает HTTP- и HTTPS-запросы.
Apigee SSO и Tomcat поддерживают три режима подключения:
- По умолчанию конфигурация поддерживает HTTP-запросы на порту 9099.
- SSL_TERMINATION: включить доступ по протоколу TLS к Apigee SSO через выбранный вами порт. Для этого режима необходимо указать ключ и сертификат TLS.
- SSL_PROXY: Настраивает Apigee SSO в режиме прокси-сервера. Это означает, что вы установили балансировщик нагрузки перед
apigee-ssoи завершили TLS на балансировщике нагрузки. Вы можете указать порт, используемый наapigee-ssoдля запросов от балансировщика нагрузки.
Как включить поддержку внешнего поставщика идентификационной информации для портала
После того как вы включите поддержку внешнего поставщика идентификационной информации для Edge, вы можете включить ее для портала Apigee Developer Services (или просто портала). При отправке запросов в Edge портал поддерживает аутентификацию SAML и LDAP. Обратите внимание, что это не то же самое, что аутентификация SAML и LDAP для входа разработчика на портал. Настроить аутентификацию внешнего поставщика идентификационной информации для входа в аккаунт разработчика можно отдельно. Подробнее о том, как настроить портал для использования поставщиков идентификационной информации…
При настройке портала необходимо указать URL модуля Apigee SSO, установленного вместе с Edge:
