Настройка SCIM в Azure AD — Руководство по провижинингу SCIM Azure
Настройте автоматический провижининг пользователей из Microsoft Entra ID (Azure AD) в SecureCodingHub с использованием SCIM 2.0. Это прохождение Azure SCIM охватывает генерацию токена, приложение провижининга, сопоставление атрибутов и сквозной поток SCIM Azure, который Вам нужен перед выходом в продакшен.
Предварительные условия
- Тенант Azure AD с admin-доступом
- Учётная запись администратора организации SecureCodingHub
- Настроенный SSO (рекомендуется, но не обязательно)
Шаг 1 — Сгенерируйте SCIM-токен
Войдите в SecureCodingHub как Администратор организации
Перейдите в Настройки → SCIM
Нажмите Generate Token
Скопируйте токен — он показывается только один раз
Шаг 2 — Настройте провижининг в Azure AD
Перейдите в Azure Portal → Microsoft Entra ID → Enterprise Applications
Выберите Ваше приложение SecureCodingHub (или создайте его)
Перейдите в Provisioning → Get started
Provisioning Mode: Automatic
Tenant URL: https://api.limeplate.com/api/sch/scim/v2
Secret Token: вставьте Ваш SCIM-токен
Нажмите Test Connection — должно успешно
Сохраните
Шаг 3 — Настройте сопоставление атрибутов
Убедитесь, что следующие атрибуты правильно сопоставлены в Вашей конфигурации провижининга Azure AD. Обратите внимание, что SecureCodingHub хранит одно поле Email на пользователя — и сопоставление userPrincipalName → userName, и сопоставление mail → emails[work].value в конечном итоге разрешаются в это же поле. Если userPrincipalName и mail различаются в Вашем тенанте, настройте оба так, чтобы они указывали на то значение, с которым пользователь входит.
| Атрибут Azure AD | SCIM-атрибут SecureCodingHub |
|---|---|
userPrincipalName | userName |
mail | emails[type eq "work"].value |
givenName | name.givenName |
surname | name.familyName |
Switch([IsSoftDeleted]...) | active |
Шаг 4 — Запустите провижининг
Установите статус провижининга на On
Сохраните
Azure AD запускает начальный цикл (может занять 20–40 минут)
Последующие циклы выполняются примерно каждые 40 минут
Шаг 5 — Проверьте
Проверьте страницу Пользователи в SecureCodingHub
Просмотрите логи провижининга в Azure Portal
Чек-лист перед развёртыванием для Azure AD SCIM
Два ранних решения формируют остальную часть Вашего развёртывания Azure AD SCIM. Первое — использовать ли gallery-приложение или non-gallery enterprise-приложение. SecureCodingHub в настоящее время не указан в галерее приложений Microsoft Entra, поэтому Вы создадите non-gallery enterprise-приложение из экрана New application. Это нормальный поддерживаемый путь. Gallery-приложения удобны, когда они существуют, но не обязательны для работы SCIM-провижининга, и ручная настройка даёт Вам контроль над именами claim и областью назначения.
Второе решение — это отношения между провижинингом и назначением. Провижининг в Entra ID не равен автоматически доступу. Вы настраиваете провижининг в разделе Provisioning, но пользователи синхронизируются только тогда, когда они назначены приложению в Users and groups. Если Вы пропустите шаг назначения, цикл провижининга запустится и сообщит ноль изменений, что часто приводит к потраченному впустую часу расследования. Подтвердите, что настройка Scope в разделе Provisioning соответствует Вашей стратегии назначения: Sync only assigned users and groups — более безопасный вариант по умолчанию, если Вы действительно не хотите, чтобы каждый лицензированный пользователь в тенанте оказался в SecureCodingHub.
Когда синхронизация застряла
Azure AD поместит задание провижининга в карантин, если увидит повторяющиеся ошибки от SCIM-эндпоинта. Баннер карантина появляется вверху раздела Provisioning и является самой распространённой причиной застрявшей синхронизации. Причины делятся на несколько корзин. Аутентификационный сбой — типичный первый карантин: перегенерированный или отозванный SCIM-токен в SecureCodingHub всё ещё вставлен в Azure AD. Сгенерируйте новый токен в SecureCodingHub, вставьте его в поле Secret Token, нажимайте Test Connection, пока не успешно, затем нажмите Restart provisioning, чтобы очистить карантин.
Несоответствия схемы — это вторая корзина. Если Вы кастомизируете таблицу сопоставления атрибутов и ссылаетесь на SCIM-атрибут, который эндпоинт не выставляет, Azure AD логирует ошибку схемы и прекращает обработку. Вернитесь к сопоставлению по умолчанию, подтверждённому на странице Обзор SCIM, и добавляйте кастомные сопоставления только после того, как базовый уровень работает. Третья корзина — лимиты запросов: очень большие тенанты могут попасть в лимиты в минуту во время начального цикла, что Azure AD интерпретирует как сервисные ошибки. Если Вы это подозреваете, ограничьте начальную синхронизацию меньшей назначенной группой, дайте ей завершиться, затем расширьте назначение.