Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
В этом руководстве описывается, как использовать проверяющий элемент Microsoft Entra SCIM для проверки совместимости сервера подготовки с клиентом Azure SCIM. Это руководство предназначено для разработчиков, которые хотят создать совместимый с SCIM сервер для управления удостоверениями с помощью службы подготовки Microsoft Entra.
В этом руководстве описано следующее:
- выбор метода тестирования;
- Настройка метода тестирования
- тестирование конечной точки SCIM.
Необходимые компоненты
- Учетная запись Microsoft Entra с активной подпиской. Создайте учетную запись бесплатно .
- Конечная точка SCIM, соответствующая стандарту SCIM 2.0 и требованиям к службе подготовки. Дополнительные сведения см. в руководстве по разработке и планированию подготовки конечной точки SCIM в идентификаторе Microsoft Entra ID.
выбор метода тестирования;
Первым шагом является выбор метода тестирования для проверки конечной точки SCIM.
Откройте браузер и перейдите к проверяющему элементу управления: https://scimvalidator.microsoft.com/.
Выберите один из трех вариантов тестирования. Вы можете использовать атрибуты по умолчанию, автоматически обнаружить схему или отправить схему.
Использовать атрибуты по умолчанию. Система предоставляет атрибуты по умолчанию и изменяет их в соответствии с вашими требованиями.
Обнаружение схемы . Если конечная точка поддерживает /Schemas, этот параметр позволяет инструменту обнаруживать поддерживаемые атрибуты. Мы рекомендуем использовать этот параметр, так как это снижает затраты на обновление приложения по мере его сборки.
Отправка схемы Microsoft Entra— отправка схемы, скачаемой из примера приложения, на идентификаторе Microsoft Entra.
Настройка метода тестирования
Теперь, когда вы выбрали метод тестирования, следующим шагом является его настройка.
- Если вы используете атрибуты по умолчанию, заполните все указанные поля.
- Если вы используете обнаружение схемы, введите URL-адрес и маркер конечной точки SCIM.
- Если вы отправляете схему, выберите JSON-файл для отправки. Параметр принимает файл .json, экспортируемый из примера приложения в Центре администрирования Microsoft Entra. Чтобы узнать, как экспортировать схему, см. Руководство. Экспорт конфигурации подготовки и откат к известному рабочему состоянию.
Примечание.
Чтобы проверить атрибуты группы, обязательно выберите Включить групповые тесты.
- Измените атрибуты списка по желанию для типов пользователей и групп, используя параметр "Добавить атрибут" в конце списка атрибутов и знак минуса (-) в правой части страницы.
- Выберите свойство присоединения из списка атрибутов пользователя и группы.
Примечание.
Свойство присоединения, также известное как соответствующий атрибут, является атрибутом, обеспечивающий возможность уникально запрашивать ресурсы пользователей и групп в источнике и сопоставлять в целевой системе.
тестирование конечной точки SCIM.
Наконец, необходимо протестировать и проверить конечную точку.
Чтобы начать проверку, выберите Проверить схему.
Просмотрите результаты с сводкой пройденных и неудачных тестов.
Перейдите на вкладку Сведения и просмотрите и исправьте проблемы.
Продолжайте тестировать схему, пока не будут пройдены все тесты.
Проверка заметок, выполняемых проверятелем SCIM
Создание нового пользователя
- POST /Users — создает нового пользователя с полными полезными данными JSON.
- Конечная точка возвращает HTTP 201
- Ответ POST содержит созданный идентификатор пользователя
- GET /Users?filter={joinProperty} eq "value" — проверяет создание путем фильтрации по свойству присоединения.
- Get возвращает созданного пользователя
- Возвращаемые значения из GET соответствуют переданным значениям из запроса POST (зависит от конечной точки).
- DELETE /Users — очищает тестового пользователя. -Вызывается только в том случае, если поддерживается жесткое удаление
Создание повторяющегося пользователя
- POST /Users — попытка создать пользователя с использованием идентичных данных (с тем же уникальным или объединяющим атрибутом), как у существующего пользователя.
- Возврат HTTP 201 при первом запросе на создание
- Возврат HTTP 409 во втором запросе на создание
Добавление атрибутов
- POST /Users — создает ресурс пользователя
- Успех HTTP 2xxx
- PATCH /Users/{id} — использует документ исправления JSON (с операцией добавления) для вставки дополнительных не обязательных атрибутов.
- GET /Users?filter={joiningProperty} eq "value" — извлекает пользователя, чтобы проверить добавленные атрибуты.
- Пользователь возвращается
- Вставляемые атрибуты теперь присутствуют в пользователе
Замена атрибутов пользователя
- POST /Users — создает ресурс пользователя
- Успех HTTP 2xxx
- PATCH /Users/{id} — отправляет документ исправления JSON (с помощью операции замены) для обновления одного или нескольких атрибутов.
- GET /Users?filter={joiningProperty} eq "value" — проверяет правильность применения обновленных атрибутов.
- Пользователь возвращается
- Обновленные атрибуты присутствуют в пользователе
Обновление свойства присоединения
- POST /Users — создает ресурс пользователя
- Успех HTTP 2xxx
- PATCH /Users/{id} — обновляет свойство присоединения (например, userName) с помощью документа исправления JSON.
- GET /Users?filter={joinProperty} eq "newValue" — подтверждает обновление свойства присоединения.
- Свойство соединения обновляется у пользователя
Обновление активного атрибута до false
- POST /Users/ — создает ресурс на основе схемы
- Успех HTTP 2xxx
- Пользователь с отключенным доступом должен быть возвращен по запросу GET
- PATCH /Users/{id} — создает документ JSON-патч, который задает для атрибута "active" значение false.
- Успех HTTP 2xxx
- GET /Users?filter={joinProperty} eq "value" — извлекает пользователя, чтобы подтвердить, что активный атрибут теперь имеет значение false.
- Возвращенная запись пользователя должна иметь ACTIVE=FALSE"
Создание новой группы
- POST /Groups — создает новую группу с полным JSON-пакетом.
- Конечная точка возвращает HTTP 201
- Ответ POST содержит созданный идентификатор группы
- GET /Group?filter={joinProperty} eq "value" — проверяет создание путем фильтрации по свойству присоединения.
- Get возвращает созданную группу
- Возвращаемые значения из GET соответствуют переданным значениям из запроса POST (зависит от конечной точки).
- DELETE /Groups — очищает тестового пользователя.
- Вызывается только в том случае, если поддерживается жесткое удаление
Создание повторяющихся групп
- POST /Groups — попытка создать группу, используя одинаковый уникальный атрибут присоединения, который уже используется в существующей группе.
- Возврат HTTP 201 при первом запросе на создание
- Возврат HTTP 409 во втором запросе на создание
Обновление атрибутов группы
- POST /Groups — создает новый ресурс группы, позволяющий обновлять атрибуты
- POST возвращает HTTP 2xx
- PATCH /Groups/{id} — отправляет документ исправления JSON с помощью операции замены для обновления одного или нескольких атрибутов существующей группы (за исключением членов).
- PATCH возвращает успех (HTTP 2xx)
- GET /Groups?filter={joiningProperty} eq "value" — подтверждает правильность обновления атрибутов группы.
- GET возвращает исправленную группу
- Атрибуты группы, которая возвращается, совпадают с измененными атрибутами в запросе PATCH.
Создание ресурса группы
- POST /Groups — создает новый ресурс группы для добавления участника в
- POST возвращает HTTP 2xx
- POST /Users — создает новый ресурс пользователя, который будет использоваться в качестве члена группы.
- POST возвращает HTTP 2xx
- PATCH /Groups/{id} — добавляет идентификатор только что созданного пользователя в группу с помощью документа исправления JSON.
- Исправление возвращает успешное выполнение
Использование выражений в проверяемом средстве SCIM
Проверяющий элемент SCIM поддерживает использование выражений для создания требуемых значений атрибутов.
Использование выражений
- Перейдите на страницу "Атрибуты".
- Введите нужное выражение в столбце значений атрибута, который требуется настроить.
- Запуск теста
Примечание.
Эти выражения работают как для атрибутов пользователя, так и для групп.
Доступные выражения
В таблице ниже перечислены доступные выражения
| Выражение | Значение | Пример | Результат |
|---|---|---|---|
| сгенерироватьСлучайнуюСтроку {Количество символов в строке} | Создание случайной строки с указанным числом символов алфавита | {%generateRandomString 6%}@contoso.com | [email protected] |
| сгенерироватьСлучайноеЧисло {Количество Чисел} | Создание случайного числа с указанным числом цифр | {%generateRandomNumber 4%} | 8821 |
| generateAlphaNumeric {Количество символов} | Создание случайной строки с сочетанием алфавитов и чисел с указанным числом символов | {%generateAlphaNumeric 7%} | 59Q2M9W |
| generateAlphaNumericWithSpecialCharacters {Count of Character} | Создание случайной строки с сочетанием алфавитов, чисел и специального символа на основе указанного количества символов | {%generateAlphaNumericWithSpecialCharacters 8%}ТЕСТ | D385N05'TEST |
Вы можете добавить значения до или после выражений, чтобы добиться желаемого результата, например при добавлении {% generateRandomString 6 %}@contoso.com в поле значения атрибута userName, оно создаст новое значение userName с каждым тестом при сохранении домена contoso.com.
Очистка ресурсов
Если при тестировании вы создали ресурсы Azure, которые больше не нужны, не забудьте удалить их.
Известные проблемы с проверятелем SCIM Microsoft Entra
- Обратимое удаление (отключение) пока не поддерживается.
- Формат часового пояса создается случайным образом и завершается сбоем для систем, которые пытаются проверить его.
- Пользователь исправления может попытаться удалить обязательные или обязательные атрибуты для определенных систем. Такие сбои следует игнорировать.