Partager via


Utiliser SCIM et Microsoft Graph ensemble pour provisionner des utilisateurs et enrichir votre application avec les données dont elle a besoin.

Audience cible : Cet article s’adresse aux développeurs qui créent des applications à intégrer à Microsoft Entra ID. Si vous souhaitez utiliser des applications déjà intégrées à Microsoft Entra ID, par exemple Zoom, ServiceNow et DropBox, vous pouvez ignorer cet article et passer en revue les tutoriels spécifiques aux applications, ou passer en revue le fonctionnement du service de provisionnement.

Scénarios courants

Microsoft Entra ID fournit un service prêt à l’emploi pour le provisionnement ainsi qu’une plateforme extensible sur laquelle créer vos applications. L’arbre de décision décrit comment un développeur utilise SCIM et le Microsoft Graph pour automatiser l’approvisionnement.

  • Créer automatiquement des utilisateurs dans mon application
  • Supprimer automatiquement des utilisateurs de mon application quand ils ne doivent plus y avoir accès
  • Intégrer mon application à plusieurs fournisseurs d’identité pour le provisionnement
  • Enrichir mon application avec des données provenant de services Microsoft tels que Teams, Outlook et Office.
  • Créer, mettre à jour et supprimer automatiquement des utilisateurs et des groupes dans Microsoft Entra ID et Active Directory

Arbre de décision SCIM Graph

Scénario 1 : Créer automatiquement des utilisateurs dans mon application

Aujourd’hui, les administrateurs informatiques approvisionnent les utilisateurs en créant manuellement des comptes d’utilisateur ou en chargeant régulièrement des fichiers CSV dans l’application. Le processus prend du temps pour les clients et ralentit l’adoption de mon application. J’ai besoin uniquement des informations utilisateur de base telles que le nom, l’e-mail et le nom d’utilisateur principal pour créer un utilisateur.

Recommandation :

  • Si vos clients utilisent différents fournisseurs et que vous ne souhaitez pas maintenir un moteur de synchronisation pour intégrer chacun d’eux, prenez en charge un point de terminaison /Users conforme SCIM. Vos clients peuvent facilement utiliser ce point de terminaison pour se connecter au service de provisionnement Microsoft Entra, et créer automatiquement des comptes d’utilisateur quand ils ont besoin d’un accès. Vous pouvez créer le point de terminaison une fois et il est compatible avec tous les fournisseurs d’identité. Consultez l’exemple de demande ci-dessous pour savoir comment créer un utilisateur avec SCIM.
  • Si vous avez besoin de données utilisateur qui se trouvent sur l’objet utilisateur dans Microsoft Entra ID et d’autres données provenant de Microsoft, créez un point de terminaison SCIM pour le provisionnement des utilisateurs, et appelez Microsoft Graph pour obtenir le reste des données.
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": []
}

Scénario 2 : Supprimer automatiquement des utilisateurs de mon application

Les clients qui utilisent mon application ont la sécurité à cœur et ont des exigences de gouvernance pour supprimer les comptes lorsque les employés n’en ont plus besoin. Comment puis-je automatiser le déprovisionnement à partir de mon application ?

Recommandation : prendre en charge un point de terminaison /Users compatible avec SCIM. Le service de provisionnement Microsoft Entra envoie des demandes de désactivation et de suppression quand l’utilisateur ne doit plus disposer d’un accès. Nous vous recommandons de prendre en charge à la fois la désactivation et la suppression des utilisateurs. Consultez les exemples ci-dessous pour savoir à quoi ressemble une demande de désactivation et de suppression.

Désactiver l’utilisateur

PATCH /Users/5171a35d82074e068ce2 HTTP/1.1
{
    "Operations": [
        {
            "op": "Replace",
            "path": "active",
            "value": false
        }
    ],
    "schemas": [
        "urn:ietf:params:scim:api:messages:2.0:PatchOp"
    ]
}

Supprimer un utilisateur

DELETE /Users/5171a35d82074e068ce2 HTTP/1.1

Scénario 3 : Automatiser la gestion des appartenances aux groupes dans mon application

Mon application s’appuie sur les groupes pour accéder à diverses ressources, et les clients souhaitent réutiliser les groupes dont ils disposent dans Microsoft Entra ID. Comment importer des groupes à partir de Microsoft Entra ID, et les tenir à jour quand les appartenances changent ?

Recommandation : prendre en charge un point de terminaison /Groups compatible avec SCIM. Le service de provisionnement Microsoft Entra se charge de la création des groupes et de la gestion des mises à jour d’appartenance dans votre application.

Scénario 4 : Enrichir mon application avec des données provenant de services Microsoft tels que Teams, Outlook et OneDrive

Mon application est intégrée à Microsoft Teams et s’appuie sur les données de message. En outre, nous stockons des fichiers pour les utilisateurs dans OneDrive. Comment puis-je enrichir mon application avec les données de ces services et de Microsoft ?

Recommandation :Microsoft Graph est votre point d’entrée pour accéder aux données Microsoft. Chaque charge de travail expose les API avec les données dont vous avez besoin. Microsoft Graph peut être utilisé avec le provisionnement SCIM pour les scénarios ci-dessus. Vous pouvez utiliser SCIM pour provisionner des attributs d’utilisateur de base dans votre application lors de l’appel à Graph pour récupérer d’autres données dont vous avez besoin.

Scénario 5 : Effectuer le suivi des changements apportés aux services Microsoft tels que Teams, Outlook et Microsoft Entra ID

Je dois pouvoir suivre les modifications apportées aux messages Teams et Outlook et réagir en temps réel. Comment puis-je faire en sorte que ces modifications soient envoyées à mon application ?

Recommandation : Microsoft Graph fournit des notifications de modifications et le suivi des modifications pour différentes ressources. Notez les limitations suivantes des notifications de modifications :

  • Si un récepteur d’événements accuse réception d’un événement, mais échoue pour une raison quelconque, l’événement peut être perdu.
  • L’ordre dans lequel les modifications sont reçues n’est pas obligatoirement chronologique.
  • Les notifications de modifications ne contiennent pas toujours de données de ressources. Pour les raisons ci-dessus, les développeurs utilisent souvent des notifications de modifications avec le suivi des modifications pour les scénarios de synchronisation.

Scénario 6 : Provisionner des utilisateurs et des groupes dans Microsoft Entra ID

Mon application crée des informations sur un utilisateur dont les clients ont besoin dans Microsoft Entra ID. Il peut s’agir d’une application RH qui gère le recrutement, d’une application de communication qui crée des numéros de téléphone pour les utilisateurs, ou de toute autre application qui génère des données qui seront précieuses dans Microsoft Entra ID. Comment remplir l’enregistrement d’utilisateur dans Microsoft Entra ID avec ces données ?

Recommandation : Microsoft Graph expose les points de terminaison /Users et /Groups, que vous pouvez intégrer dès à présent pour provisionner des utilisateurs dans Microsoft Entra ID. Notez que Microsoft Entra ID ne prend pas en charge la réécriture de ces utilisateurs dans Active Directory.

Remarque

Microsoft dispose d’un service de provisionnement qui extrait les données des applications RH, telles que Workday et SuccessFactors. Ces intégrations sont créées et gérées par Microsoft. Pour l’intégration d’une nouvelle application RH à notre service, vous pouvez envoyer une demande sur UserVoice.