← Cloudflare One / cloudflare-one / integrations / identity-providers
Amazon Cognito
Amazon Cognito обеспечивает управление идентификацией SSO для конечных пользователей веб- и мобильных приложений. Amazon Cognito можно интегрировать с Cloudflare One в качестве поставщика идентификации OIDC.
Предварительные требования
- Amazon Cognito user pool ↗
Настройте Amazon Cognito (OIDC)
1. Получите настройки Amazon Cognito
Для настройки интеграции требуются следующие значения Amazon Cognito:
- App (client) ID
- Секрет клиента
- Auth URL
- Token URL
- URL-адрес сертификата (ключа)
Чтобы получить эти значения:
-
Войдите в панель администратора Amazon Cognito.
-
Перейдите в User pools и выберите свой пул пользователей.
-
Выберите Интеграция приложения на вкладке.
-
В разделе Домен, скопируйте домен своего пула пользователей или настроить новый домен ↗.
-
Запишите следующее Конечные точки OIDC Amazon Cognito ↗:
- Auth URL:
https://<your user pool domain>/oauth2/authorize - Token URL:
https://<your user pool domain>/oauth2/token - URL-адрес сертификата (ключа):
https://cognito-idp.<region>.amazonaws.com/<your user pool ID>/.well-known/jwks.json(это Token signing key URL показанный в Обзор User pool.)
- Auth URL:
-
В разделе Список клиентов приложения, выберите Создать клиент приложения.
-
Для тип приложения, выберите Конфиденциальный клиент.
-
Введите Имя клиента приложения для вашего приложения.
-
Убедитесь, что Создайте client secret выбрано.
-
Настройте следующее Настройки Hosted UI:
-
В Разрешённые URL обратного вызова, добавьте следующий URL-адрес:
https://<your-team-name>.cloudflareaccess.com/cdn-cgi/access/callbackИмя вашей команды можно найти в Панель управления Cloudflare ↗ в разделе Настройки > Название и домен команды > Название команды.
-
Выберите Поставщики удостоверений для использования с этим клиентом приложения. Как минимум включите Cognito user pool как поставщика.
-
Для Типы разрешений OAuth 2.0 (grant types), выберите Authorization code grant.
-
Для OpenID Connect scopes, выберите OpenID, Электронная почта, а также Профиль.
-
-
Выберите Создать клиент приложения.
-
Далее выберите клиент приложения, который вы только что создали.
-
Скопируйте его Client ID и Секрет клиента.
2. Добавьте Amazon Cognito в качестве поставщика идентификации
-
В Панель управления Cloudflare ↗, перейдите в Zero Trust > Интеграции > Поставщики удостоверений.
-
В разделе Ваши поставщики идентификации, выберите Добавить нового поставщика идентификации.
-
Выберите OpenID Connect.
-
Назовите поставщика идентификации и заполните обязательные поля данными, полученными от Amazon Cognito.
-
(Необязательно) Включите Proof of Key Exchange (PKCE) ↗ если протокол поддерживается вашим IdP. PKCE будет выполняться при каждой попытке входа.
-
(Необязательно) В разделе Необязательные конфигурации, введите пользовательские утверждения OIDC который вы хотите добавить к идентификации пользователей.
-
Выберите Save.
Чтобы тест что ваше подключение работает, выберите Тест.
Пример конфигурации API
{
"config": {
"client_id": "<your client id>",
"client_secret": "<your client secret>",
"auth_url": "https://<your user pool domain>/oauth2/authorize",
"token_url": "https://<your user pool domain>/oauth2/token",
"certs_url": "https://cognito-idp.<region>.amazonaws.com/<your user pool ID>/.well-known/jwks.json",
"scopes": ["openid", "email", "profile"],
"claims": ["sub", "cognito:username", "name", "cognito:groups"]
},
"type": "oidc",
"name": "Amazon Cognito example"
}