INTEGRITY Документация

Okta

Okta предоставляет облачное программное обеспечение, которое помогает компаниям управлять аутентификацией пользователей в современных приложениях и защищать её, а также помогает разработчикам встраивать механизмы управления идентификацией в приложения, веб-сервисы и устройства. Вы можете интегрировать Okta с Cloudflare One и создавать правила на основе идентификации пользователя и членства в группах. Cloudflare One поддерживает интеграцию с Okta по протоколу OIDC (используется по умолчанию) или SAML протокол.

Кроме того, вы можете настроить Okta для использования информации о рисках от Cloudflare One risk score пользователей чтобы создать политики уровня SSO. Дополнительную информацию см. в Отправлять risk score в Okta.

Предварительные требования

Поддерживаемые возможности

Настройте Okta как поставщика OIDC (Okta App Catalog)

Чтобы настроить интеграцию Okta через каталог приложений Okta Integration Network (OIN):

  1. Войдите в панель администратора Okta.

  2. Перейдите в Приложения > Приложения.

  3. Выберите Browse App Catalog.

  4. Найдите Cloudflare и выберите Cloudflare One приложение.

  5. Выберите Добавить интеграцию.

  6. В Метка приложения, введите имя приложения (например, Cloudflare Access).

  7. В Team domain, введите имя команды Cloudflare Zero Trust (только префикс поддомена, не включайте .cloudflareaccess.com):

    <your-team-name>

    Имя вашей команды можно найти в Панель управления Cloudflare в разделе Настройки > Название и домен команды > Название команды.

  8. В Sign On вкладке скопируйте Client ID и Секрет клиента и вставьте их в App ID и Client secret.

  9. Скопируйте URL своей учётной записи Okta (без -admin значение) и скопируйте его в поле настройки Okta в Cloudflare.

Настройте Okta как поставщика OIDC (Custom App Integration)

  1. Войдите в панель администратора Okta и перейдите в Приложения > Приложения.

  2. Выберите Create App Integration.

  3. Для Способ входа, выберите OIDC - OpenID Connect.

    Создание приложения OIDC в Okta
  4. Для Тип приложения, выберите Веб-приложение. Выберите Далее.

  5. Введите любое имя для приложения. В Sign-in redirect URIs поле введите следующий URL-адрес:

    https://<your-team-name>.cloudflareaccess.com/cdn-cgi/access/callback

    Имя вашей команды можно найти в Панель управления Cloudflare в разделе Настройки > Название и домен команды > Название команды.

  6. Выберите нужный Назначение опцию и выберите Save.

  7. В представлении приложения перейдите в раздел Sign On на вкладке.

  8. Прокрутите вниз до Token claims и выберите Показать устаревшую конфигурацию > Изменить.

    Настройка фильтра claim Groups в Okta
  9. Задайте Фильтр утверждений о группах к Соответствует регулярному выражению и его значение на .*.

  1. В Общее вкладке скопируйте Client ID и Секрет клиента.

    Поиск учётных данных клиента в Okta
  1. В Панель управления Cloudflare, перейдите в Zero Trust > Интеграции > Поставщики удостоверений.

  2. В разделе Ваши поставщики идентификации, выберите Добавить нового поставщика идентификации. Выберите Okta в качестве своего поставщика идентификации.

  3. Заполните следующую информацию:

    • Название: Присвойте имя своему поставщику идентификации.
    • App ID: Введите свой идентификатор клиента Okta.
    • Секрет клиента: Введите свой client secret для Okta.
    • URL-адрес учетной записи Okta: Введите свой домен Okta, например https://my-company.okta.com.
  4. (Необязательно) Создайте API-токен Okta и введите его в Панель управления Cloudflare в разделе Zero Trust > Интеграции > Поставщики удостоверений (токен может быть только для чтения). Используйте токен API, если в вашем клиенте Okta более 100 групп. Эта настройка специфична для Okta и не является частью SCIM. Токен используется только для получения имен групп Okta в конструкторе политик. Access оценивает членство в группах на основе OIDC-токена пользователя во время аутентификации.

  5. (Необязательно) Чтобы настроить пользовательские утверждения OIDC:

    1. В Okta создайте пользовательский сервер авторизации и убедитесь, что groups scope включён.
    2. В Панель управления Cloudflare, введите Authorization Server ID полученный от Okta.
    3. В разделе Необязательные конфигурации, введите утверждения, которые нужно добавить к идентификационным данным пользователей.
  6. (Необязательно) Включите Proof of Key Exchange (PKCE). PKCE будет выполняться при каждой попытке входа.

  7. Выберите Save.

Чтобы тест что ваше подключение работает, выберите Тест.

Синхронизируйте пользователей и группы

Интеграция Okta позволяет синхронизировать группы IdP и автоматически деактивировать пользователей с помощью SCIM. Чтобы включить подготовку SCIM между Access и Okta, вам понадобятся две отдельные интеграции приложений в Okta:

SCIM по-разному влияет на оценку политик Access и Gateway.

Access оценивает личность пользователя и членство в группах на основании утверждения SAML или токена OIDC, возвращённого поставщиком идентификации во время аутентификации. SCIM предоставляет читаемые названия групп в конструкторе политик Access, но Access не использует членство в группах SCIM для оценки входа. Если вы включите Включить отключение учётных записей пользователей, удаление пользователя из приложения SCIM аннулирует его активные сессии Access. Вы также можете настроить SCIM так, чтобы сессии аннулировались после изменения членства в группе. Access оценивает обновлённые данные поставщика идентификации при повторной аутентификации пользователя.

Gateway оценивает политики на основе личности по отношению к User Registry identity. SCIM обновляет эту идентификационную информацию при изменении пользователей или членства в группах, не дожидаясь повторной аутентификации пользователя. Профили устройств Cloudflare One Client используют ту же синхронизированную идентификационную информацию.

1. Включите SCIM в Cloudflare One

  1. В Панель управления Cloudflare, перейдите в Zero Trust > Интеграции > Поставщики удостоверений.

  2. Найдите интеграцию Okta и выберите Изменить.

  3. Включите Включите SCIM.

  4. (Необязательно) Настройте следующие параметры:

  1. Выберите Пересоздать секрет. Скопируйте SCIM Endpoint и SCIM Secret. Эти значения нужно будет ввести в Okta.

  2. Выберите Save.

Секрет SCIM никогда не истекает, но вы можете вручную перегенерировать его в любой момент.

2. Настройте SCIM в Okta

  1. На панели управления администратора Okta перейдите в Приложения > Приложения.

  2. Выберите Browse App Catalog.

  3. Найдите SCIM Header Auth и выберите SCIM 2.0 Test App (Header Auth).

  4. Выберите Добавление интеграции.

  5. На Общие настройки вкладке присвойте имя своему приложению и выберите Далее.

  6. На Sign-on Options вкладке убедитесь, что SAML 2.0 выбрано.

  7. В разделе Сведения об учётных данных, задайте Формат имени пользователя приложения либо Имя пользователя Okta или Электронная почта. Это значение будет использовано для SCIM userName атрибут.

  8. Выберите Готово чтобы создать интеграцию.

  9. На Подготовка вкладке выберите Configure API Integration.

  10. Выберите Включите интеграцию API.

  11. В Базовый URL поле введите SCIM Endpoint полученный от Cloudflare One.

  12. В API-токен поле введите SCIM Secret полученный от Cloudflare One.

    Ввод значений SCIM в Okta
  13. Выберите Тестирование учётных данных API чтобы убедиться, что учётные данные введены верно. Выберите Save.

  14. На Подготовка вкладке выберите Изменить и включите:

    • Create Users
    • Update User Attributes
    • Деактивация пользователей
    Настройте параметры подготовки учётных записей в Okta
  15. В Назначения вкладке добавьте пользователей, которых вы хотите синхронизировать с Cloudflare Access. Пользователей можно добавлять пакетами, назначив группу. Если пользователь исключается из назначения приложения, будь то прямым удалением или удалением из группы, назначенной приложению, это вызовет в Okta событие деинициализации, которое будет отправлено в Cloudflare.

  16. В Push Groups вкладке добавьте группы Okta, которые вы хотите синхронизировать с Cloudflare Access. Эти группы будут отображаться в конструкторе политик Access и представляют собой членство в группах, которое будет добавляться и удаляться при изменении членства в Okta.

Чтобы проверить интеграцию, выберите Просмотр журналов в приложении Okta SCIM.

Чтобы проверить, обновились ли идентификационные данные пользователей в Cloudflare One, просмотрите журналы подготовки SCIM.

Пример конфигурации API

{
	"config": {
		"client_id": "<your client id>",
		"client_secret": "<your client secret>",
		"okta_account": "https://dev-abc123.oktapreview.com"
	},
	"type": "okta",
	"name": "my example idp"
}

Устранение неполадок

Не удалось получить данные о пользователе или группе от поставщика удостоверений

Если вы видите ошибку Failed to fetch user/group information from the identity, дважды проверьте свою конфигурацию Okta: