Использование SCIM совместно с Microsoft Graph для подготовки пользователей и расширения возможностей приложения с помощью необходимых данных
Целевая аудитория: эта статья ориентирована на разработчиков, создающих приложения для интеграции с идентификатором Microsoft Entra. Если вы хотите использовать приложения, уже интегрированные с идентификатором Microsoft Entra, например Zoom, ServiceNow и DropBox, вы можете пропустить эту статью и просмотреть конкретные руководства по приложению или проверить , как работает служба подготовки.
Распространенные сценарии
Идентификатор Microsoft Entra предоставляет нестандартную службу для подготовки и расширяемой платформы для создания приложений. Дерево принятия решений описывает, как разработчику следует использовать SCIM и Microsoft Graph для автоматизации подготовки.
- Автоматическое создание пользователей в приложении
- Автоматическое удаление пользователей из приложения, когда доступ им больше не предоставляется
- Интеграция приложения с несколькими поставщиками удостоверений для выполнения подготовки
- Предоставление приложению дополнительных данных от таких служб Майкрософт, как Teams, Outlook и Office.
- Автоматическое создание, обновление и удаление пользователей и групп в идентификаторе Microsoft Entra и Active Directory
Сценарий 1. Автоматическое создание пользователей в приложении
В настоящее время ИТ-администраторы подготавливают пользователей, вручную создавая пользовательские учетные записи или периодически отправляя CSV-файлы в приложение. Этот процесс занимает много времени для клиентов и замедляет внедрение приложения. Для создания пользователя нужны только основные сведения о пользователе, такие как имя, электронная почта и параметр userPrincipalName.
Рекомендация.
- Если клиенты используют разных поставщиков удостоверений и вы не хотите поддерживать модуль синхронизации для интеграции с каждым из них, необходимо реализовать поддержку конечной точки /Users, совместимой с SCIM. Клиенты смогут легко использовать эту конечную точку для интеграции со службой подготовки Microsoft Entra и автоматически создавать учетные записи пользователей при необходимости доступа. Эту конечную точку можно создать один раз, и она будет совместима со всеми поставщиками удостоверений. Ознакомьтесь ниже с примером запроса, предназначенным для создания пользователя с помощью SCIM.
- Если вам нужны пользовательские данные, найденные в объекте пользователя в идентификаторе Microsoft Entra ID и других данных от корпорации Майкрософт, рассмотрите возможность создания конечной точки SCIM для подготовки пользователей и вызова в Microsoft Graph, чтобы получить остальные данные.
POST /Users
{
"schemas": [
"urn:ietf:params:scim:schemas:core:2.0:User",
"urn:ietf:params:scim:schemas:extension:enterprise:2.0:User"],
"externalId": "0a21f0f2-8d2a-4f8e-bf98-7363c4aed4ef",
"userName": "BillG",
"active": true,
"meta": {
"resourceType": "User"
},
"name": {
"formatted": "Bill Gates",
"familyName": "Gates",
"givenName": "Bill"
},
"roles": []
}
Сценарий 2. Автоматическое удаление пользователей из приложения
Клиенты, использующие приложение, ориентированы на безопасность, и у них имеются обязательные требования по удалению учетных записей, когда они больше не нужны сотрудникам. Как можно автоматизировать отмену подготовки из приложения?
Рекомендация: необходимо обеспечить поддержку конечной точки /Users, совместимой с SCIM. Служба подготовки Microsoft Entra отправляет запросы на отключение и удаление, когда у пользователя больше нет доступа. Рекомендуется реализовать как отключение, так и удаление пользователей. Ниже приводятся примеры того, какими могут быть запросы на отключение и удаление.
Отключение пользователя
PATCH /Users/5171a35d82074e068ce2 HTTP/1.1
{
"Operations": [
{
"op": "Replace",
"path": "active",
"value": false
}
],
"schemas": [
"urn:ietf:params:scim:api:messages:2.0:PatchOp"
]
}
Удаление пользователя
DELETE /Users/5171a35d82074e068ce2 HTTP/1.1
Сценарий 3. Автоматизация управления членством в группах в приложении
Мое приложение использует группы для доступа к различным ресурсам, и клиенты хотят повторно использовать группы, которые они имеют в идентификаторе Microsoft Entra. Как импортировать группы из идентификатора Microsoft Entra и сохранить их обновленными по мере изменения членства?
Рекомендация: необходимо обеспечить поддержку конечной точки /Groups, совместимой с SCIM. Служба подготовки Microsoft Entra позаботится о создании групп и управлении обновлениями членства в приложении.
Сценарий 4. Предоставление приложению дополнительных данных от таких служб Майкрософт, как Teams, Outlook и OneDrive
Приложение встроено в Microsoft Teams и основано на данных из сообщений. Кроме того, файлы для пользователей сохраняются в OneDrive. Как можно передать приложению дополнительные данные от этих служб и других ресурсов Майкрософт?
Рекомендация:Microsoft Graph является точкой входа для доступа к данным ресурсов Майкрософт. Каждая рабочая нагрузка предоставляет соответствующим API-интерфейсам необходимые данные. Для вышеперечисленных сценариев можно использовать Microsoft Graph совместно с подготовкой SCIM. Чтобы получать любые другие нужные данные, SCIM можно использовать для подготовки базовых атрибутов пользователей в приложении при вызове Graph.
Сценарий 5. Отслеживание изменений в службы Майкрософт, таких как Teams, Outlook и идентификатор Microsoft Entra
Необходима возможность по отслеживанию изменений в сообщениях Teams и Outlook и реагированию на них в реальном времени. Как можно осуществить передачу этих изменений в приложение?
Рекомендация: Microsoft Graph предоставляет уведомления об изменениях и отслеживание изменений для различных ресурсов. Обратите внимание на следующие ограничения, действующие в отношении уведомлений об изменениях.
- Если получатель событий подтверждает событие, но по какой-то причине не может действовать надлежащим образом, это событие может быть потеряно.
- Не гарантируется получение изменений в хронологическом порядке.
- Уведомления об изменениях не всегда содержат данные ресурсов. По указанным выше причинам разработчики часто используют уведомления об изменениях вместе с отслеживанием изменений для сценариев синхронизации.
Сценарий 6. Подготовка пользователей и групп в идентификаторе Microsoft Entra
Мое приложение создает сведения о пользователе, которому нужны клиенты в идентификаторе Microsoft Entra. Это может быть приложение отдела кадров, чем управление наймом, приложение связи, которое создает номера телефонов для пользователей или другое приложение, которое создает данные, которые будут ценными в идентификаторе Microsoft Entra. Разделы справки заполнять запись пользователя в идентификаторе Microsoft Entra идентификатором?
Рекомендация Microsoft Graph предоставляет конечные точки /Users и /Groups, которые можно интегрировать с сегодня для подготовки пользователей к идентификатору Microsoft Entra. Обратите внимание, что идентификатор Microsoft Entra не поддерживает запись этих пользователей обратно в Active Directory.
Примечание.
У Майкрософт имеется служба подготовки, которая получает данные из приложений отдела кадров, таких как Workday и SuccessFactors. Эти варианты интеграции создаются и управляются средствами Майкрософт. Для внедрения нового приложения отдела кадров в нашу службу можно разместить соответствующий запрос на UserVoice.