Новый пользовательский интерфейс Edge и Management API Edge работают, отправляя запросы на сервер управления Edge, где сервер управления поддерживает следующие типы аутентификации:
- Базовая аутентификация. Войдите в New Edge UI или отправьте запросы к Edge management API, указав имя пользователя и пароль.
- OAuth2 / OIDC. Замените учетные данные Edge Basic Auth на токен доступа OAuth2 и токен обновления. Выполняйте вызовы к Edge Management API, передавая токен доступа OAuth2 в заголовке Bearer вызова API.
Edge поддерживает использование следующих внешних поставщиков идентификационной информации для аутентификации:
- SAML 2.0. Создавайте токены доступа OAuth на основе утверждений SAML, возвращаемых поставщиком идентификационной информации SAML.
- Протокол LDAP. Используйте методы аутентификации LDAP для поиска и привязки, чтобы генерировать токены доступа OAuth.
Поставщики идентификационной информации SAML и LDAP поддерживают среду системы единого входа. Используя внешний поставщик идентификационной информации с Edge, вы можете поддерживать SSO для нового интерфейса Edge и API, а также для любых других сервисов, которые вы предоставляете и которые также поддерживают внешний поставщик идентификационной информации.
Новая структура Apigee SSO
Начиная с версии Edge для частного облака 4.54.00 устаревший компонент apigee-sso был заменен на современный и легкий брокер идентификационной информации OpenID Connect (OIDC) под названием Dex. Этот адаптер SSO интегрирован непосредственно в жизненный цикл компонента apigee-openldap, поэтому устанавливать отдельный модуль apigee-sso не нужно.
Поскольку Apigee SSO (брокер Dex) поставляется в комплекте с apigee-openldap, он развертывается на тех же узлах, что и экземпляры OpenLDAP. Управление жизненным циклом осуществляется с помощью встроенных действий OPDK, таких как apigee-service apigee-openldap start_sso и stop_sso.
Порт 9099 должен быть открыт на узле apigee-openldap, чтобы поддерживать доступ к системе единого входа Apigee из браузера, от внешнего поставщика идентификационной информации SAML или LDAP, а также от сервера управления и нового интерфейса Edge. При настройке системы единого входа Apigee вы можете указать, будет ли внешнее подключение использовать протокол HTTP или зашифрованный протокол HTTPS.
Apigee SSO – это сервис без отслеживания состояния, который использует базу данных Postgres (apigee_dex), доступную через порт 5432 на узле Postgres, чтобы сохранять состояние OAuth2 на нескольких узлах, обеспечивая высокую доступность. Как правило, можно использовать тот же сервер Postgres, который вы установили вместе с Edge, – автономный сервер Postgres или два сервера Postgres, настроенные в режиме "основной/резервный". Если нагрузка на сервер Postgres высока, вы также можете создать отдельный узел Postgres только для базы данных системы единого входа.
Поддержка стандарта OpenID Connect (OIDC)
Реализация SAML и LDAP в Edge основана на стандартных токенах доступа OpenID Connect (OIDC) и OAuth2.
Модернизированная система единого входа Apigee выдает токены, строго соответствующие стандарту OIDC (используются стандартные утверждения, такие как email и sub, а также непрозрачные токены обновления). Подробнее о протоколе OAuth 2.0…
О SAML
Аутентификация SAML имеет несколько преимуществ. SAML позволяет:
- Получите полный контроль над управлением пользователями. Когда пользователи покидают организацию и их аккаунты деинициализируются централизованно, они автоматически теряют доступ к Edge.
- Укажите, как пользователи должны проходить аутентификацию для доступа к Edge. Вы можете выбрать разные типы аутентификации для разных организаций Edge.
- Управление правилами аутентификации. Поставщик SAML может поддерживать правила аутентификации, которые лучше соответствуют стандартам вашей организации.
- Вы можете отслеживать входы в систему, выходы из нее, неудачные попытки входа и действия с высоким риском в развертывании Edge.
Если SAML включен, доступ к New Edge UI и Edge management API осуществляется с помощью токенов доступа OAuth2. Эти токены генерируются системой единого входа Apigee, которая принимает утверждения SAML, возвращаемые вашим поставщиком идентификационной информации.
О протоколе LDAP
LDAP (Lightweight Directory Access Protocol) – это открытый отраслевой стандартный протокол приложений для доступа к распределенным службам каталогов и управления ими. Службы каталогов могут предоставлять любой упорядоченный набор записей, часто с иерархической структурой, например корпоративный каталог электронной почты.
Для аутентификации LDAP в новой системе единого входа Apigee используется встроенный коннектор LDAP. Коннектор выполняет поиск LDAP для organizationalRole и стандартных атрибутов (таких как mail и uid), чтобы сопоставить устаревших пользователей Apigee со стандартными утверждениями OIDC.
LDAP с Edge для частного облака поддерживает стандартные методы аутентификации Search и Bind для сервера, совместимого с LDAP.
Apigee SSO получает адрес электронной почты пользователя и стандартные утверждения OIDC (например, email, preferred_username и groups) и обновляет внутреннюю запись пользователя, чтобы в ней был актуальный адрес электронной почты, поскольку Edge использует его для авторизации.
Новые URL API и интерфейса Edge
URL, который вы используете для доступа к New Edge UI и Edge management API, не изменился. В новом интерфейсе Edge:
http://edge_UI_IP_DNS:3001
где edge_UI_IP_DNS – это IP-адрес или имя DNS машины, на которой размещен интерфейс New Edge. При настройке New Edge UI можно указать, что для подключения используется протокол HTTP или зашифрованный протокол HTTPS.
Для Edge Management API:
http://ms_IP_DNS:8080/v1
где ms_IP_DNS – IP-адрес или DNS-имя сервера управления. При настройке API вы можете указать, что подключение должно использовать протокол HTTP или зашифрованный протокол HTTPS.
Как настроить TLS с помощью New Apigee SSO
По умолчанию подключение к Apigee SSO использует HTTP через порт 9099 на узле, на котором размещен apigee-openldap. Легковесный брокер идентификации на основе Go обрабатывает запросы HTTP и HTTPS.
Система единого входа Apigee поддерживает три режима подключения:
- DEFAULT. Конфигурация по умолчанию поддерживает HTTP-запросы через порт 9099.
- SSL_TERMINATION: включает доступ TLS к Apigee SSO через выбранный порт. Для этого режима необходимо указать ключ и сертификат TLS.
- SSL_PROXY: настраивает систему единого входа Apigee в режиме прокси-сервера. Это означает, что вы установили балансировщик нагрузки перед компонентом и завершили TLS на балансировщике нагрузки. Вы можете указать порт, используемый в Apigee SSO для запросов от балансировщика нагрузки.