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

Подготовка через Microsoft Entra

После того как вы собрали необходимые данные, потребуется выполнить следующие шаги для завершения провиженинга с Entra.

Настройте приложение Enterprise

  1. Перейдите в Entra admin center и выберите Приложения > Enterprise Applications.
  2. В Microsoft Entra Gallery выберите Новое приложение > Создайте собственное приложение, затем выберите имя.
  3. Выберите Интегрируйте любое другое приложение, которое не найдено в галерее (Non-gallery).
  4. Создание приложение.

Настройте приложение Enterprise

  1. Внутри только что созданного приложения в разделе Управление в боковом меню выберите Подготовка.
  2. Выберите Новая конфигурация и введите Tenant URL: https://api.cloudflare.com/client/v4/accounts/<ACCOUNT_ID>/scim/v2. Замените <ACCOUNT_ID> с идентификатором вашей собственной учётной записи.
  3. Вставьте значение токена API SCIM-провижининга в качестве Секретный токен.
  4. Выберите Test Connection затем Save конфигурацию.

Настройка синхронизации пользователей и групп

  1. Перейдите к только что созданному приложению в разделе Управление в боковом меню выберите Пользователи и группы.
  2. Назначьте пользователей и группы приложению.
  3. После назначения пользователей перейдите в Подготовка в боковом меню и выберите Начать подготовку.
  1. Чтобы проверить, какие пользователи и группы были синхронизированы, перейдите в Журналы подготовки в боковом меню. Вы также можете просмотрите Cloudflare Audit Logs.
  1. Чтобы предоставить разрешения пользователям и группам в Cloudflare, ознакомьтесь с Роли и Политики.

(Необязательно) Автоматизация интеграции SCIM в Cloudflare

Интеграция SCIM от Cloudflare требует одного внешнего приложения на аккаунт. Клиентам с несколькими аккаунтами может быть удобно автоматизировать часть настройки, чтобы сэкономить время и меньше работать в административном интерфейсе Entra.

Первоначальная настройка, включающая создание non-gallery applications и добавление provisioning URL и API-ключа, может быть выполнена через API, но остальная часть настройки зависит от ваших потребностей и конфигурации IDP.

1. Получите токен доступа

Получите токен доступа Entra. Обратите внимание, что в примере ниже используется Azure CLI.

# Using azure-cli
az login
az account get-access-token --resource https://graph.microsoft.com

(payload with accessToken returned)

2. Создайте новое приложение с помощью шаблона.

Идентификатор шаблона 8adf8e6e-67b2-4cf2-a259-e3dc5476c621 является рекомендуемым шаблоном для создания приложений вне галереи в документации Entra. Замените <accessToken> и displayName своими значениями.

Пример запроса
curl -X POST 'https://graph.microsoft.com/v1.0/applicationTemplates/8adf8e6e-67b2-4cf2-a259-e3dc5476c621/instantiate' \
  --header 'Content-Type: application/json' \
  --header 'Authorization: Bearer <accessToken>' \
  --data-raw '{
    "displayName": "Entra API create application test"
}'
Пример ответа
{
  "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#microsoft.graph.applicationServicePrincipal",
  "application": {
    "id": "343a8552-f9d9-471c-b677-d37062117cc8", //
    "appId": "03d8207b-e837-4be9-b4e6-180492eb3b61",
    "applicationTemplateId": "8adf8e6e-67b2-4cf2-a259-e3dc5476c621",
    "createdDateTime": "2025-01-30T00:37:44Z",
    "deletedDateTime": null,
    "displayName": "Entra API create application test",
    "description": null,
    // ... snipped rest of large application payload
  },
  "servicePrincipal": {
    "id": "a8cb133d-f841-4eb9-8bc9-c8e9e8c0d417", // Note this ID for the subsequent request
    "deletedDateTime": null,
    "accountEnabled": true,
    "appId": "03d8207b-e837-4be9-b4e6-180492eb3b61",
    "applicationTemplateId": "8adf8e6e-67b2-4cf2-a259-e3dc5476c621",
    "appDisplayName": "Entra API create application test",
	// ...snipped rest of JSON payload
}
}

3. Создайте задание подготовки

Чтобы включить provisioning, вам также потребуется создать задание (job). Обратите внимание: SERVICE_PRINCIPAL_ID из предыдущего запроса будет использован в запросе ниже. templateId в SCIM это шаблон, предоставленный Entra.

Пример запроса
curl -X POST 'https://graph.microsoft.com/v1.0/servicePrincipals/<SERVICE_PRINCIPAL_ID>/synchronization/jobs' \
  --header 'Content-Type: application/json' \
  --header 'Authorization: Bearer <accessToken>' \
  --data-raw '{
    "templateId": "scim"
}'
Пример ответа
{
  "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#servicePrincipals('a8cb133d-f841-4eb9-8bc9-c8e9e8c0d417')/synchronization/jobs/$entity",
  "id": "scim.5b223a2cc249463bbd9a791550f11c76.03d8207b-e837-4be9-b4e6-180492eb3b61",
  "templateId": "scim",
  "schedule": {
    "expiration": null,
    "interval": "PT40M",
    "state": "Disabled"
  },
}
// ... snipped rest of JSON payload

4. Настройте URL подготовки SCIM и токен API

Затем настройте Tenant URL (конечную точку SCIM Cloudflare) и API-токен (SCIM Provisioning API Token).

Замените <accessToken>, <ACCOUNT_ID>, <SCIM_PROVISIONING_API_TOKEN_VALUE> своими значениями.

Пример запроса
 --header 'Content-Type: application/json' \
  --header 'Authorization: Bearer <accessToken>' \
  --data-raw '{
  "value": [
    {
      "key": "BaseAddress",
      "value": "https://api.cloudflare.com/client/v4/accounts/<ACCOUNT_ID>/scim/v2"
    },
    {
      "key": "SecretToken",
      "value": "<SCIM_PROVISIONING_API_TOKEN_VALUE>"
    }
  ]
}'

После выполнения указанных выше задач в Entra выполните следующие шаги: