Configurer SCIM avec Microsoft Entra ID
Ce guide vous accompagne pour connecter Microsoft Entra ID à mTime via le provisionnement SCIM, du premier paramètre mTime jusqu’à une synchronisation vérifiée et opérationnelle. Suivez les étapes dans l’ordre — tout ce dont vous avez besoin se trouve sur cette page.
En chemin, vous allez : préparer mTime (étapes 1–3), créer et connecter l’application d’entreprise Entra (étapes 4–6), créer et affecter les utilisateurs et groupes (étapes 7–8), et tester avant la mise en production (étapes 9–11).
Étape 1 — Activer l’intégration de provisionnement SCIM dans mTime
- Allez dans et ouvrez Provisionnement SCIM.
- Activez l’intégration.
- Laissez Lier externalId à un attribut d'employé vide sauf si vous voulez une correspondance par matricule. Vide est le réglage par défaut, et dans ce cas les utilisateurs sont reliés aux employés par adresse e-mail — ce qui suffit à la plupart des espaces de travail. Ne choisissez un attribut que si votre fournisseur d’identité envoie un matricule stable et que vous voulez que mTime fasse d’abord la correspondance sur celui-ci ; choisissez alors l’attribut que votre intégration RH remplit avec ce matricule. Seuls les attributs marqués uniques peuvent être liés — si celui que vous voulez n’apparaît pas dans la liste, marquez-le d’abord comme unique dans les paramètres des attributs d’employé.

externalId SCIM est utilisé du tout. Laissez-le vide et vous pouvez ignorer l’externalId dans tout le reste de ce guide — il n’a jamais besoin d’être rempli.Étape 2 — Créer l’utilisateur de service de provisionnement
Le fournisseur d’identité a besoin de son propre compte de service dans mTime :
- Allez dans et cliquez sur Créer un utilisateur de service .
- Donnez-lui un nom reconnaissable, par ex.
entra-provisioning. - Donnez-lui uniquement le rôle Provisioning — rien d’autre.
Un seul utilisateur de service de provisionnement peut exister par espace de travail. Son rôle est cloisonné : le compte fonctionne exclusivement sur les points de terminaison SCIM et est refusé partout ailleurs.

Étape 3 — Créer la clé API
- Ouvrez l’utilisateur de service que vous venez de créer et ajoutez une clé API.
- Copiez la clé maintenant — elle n’est affichée qu’une seule fois. C’est le « Secret Token » que vous collerez dans Entra à l’étape 5.
Si vous la perdez, révoquez la clé et créez-en une nouvelle.
Étape 4 — Créer l’application d’entreprise dans Entra
Passez maintenant au centre d’administration Microsoft Entra. Vous avez besoin d’un rôle capable de créer et de gérer des applications d’entreprise (par ex. Application Administrator).
- Dans le menu de gauche, allez dans Enterprise apps (1) > All applications (2) et cliquez sur New application (3) dans la barre d’outils au-dessus de la liste. Cela ouvre la Microsoft Entra App Gallery.

- Cliquez sur Create your own application (1) en haut de la page de la galerie — un volet s’ouvre à droite.
- Nommez l’application (2) — les captures d’écran utilisent
mTIME SCIM test; n’importe quel nom convient (par ex.mTime). Laissez Integrate any other application you don’t find in the gallery (Non-gallery) (3) sélectionné. Entra suggère des applications de la galerie au nom similaire sous le champ du nom — ignorez-les, mTime n’est pas dans la galerie. Les deux autres options créent le mauvais type d’objet : une inscription d’application (pour un logiciel que vous développez vous-même) n’a pas de provisionnement, et Application Proxy est destiné aux applications sur site. - Cliquez sur Create (4) en bas du volet.

- La nouvelle application s’ouvre et apparaît désormais sous All applications (1).

C’est dans cette application que tout le reste se passe : la connexion à mTime, les mappages d’attributs et le choix des utilisateurs et groupes provisionnés.
Étape 5 — Connecter l’application à mTime
- Dans le menu de l’application, ouvrez Provisioning (1) sous Manage (la carte Provision User Accounts (2) de la vue d’ensemble mène au même endroit).

- La première fois, la page Get started with application provisioning s’ouvre. Cliquez sur Connect your application (1) sous Create configuration. (L’élément de menu Connectivity est grisé tant que la configuration n’existe pas — ce bouton est le chemin pour y accéder ; lors des visites suivantes, vous ouvrez Connectivity directement.)
https://<votre hôte mTime>/api/scim/v2 — par exemple https://mtime.example.com/api/scim/v2.
5. Collez la clé API de l’étape 3 dans Secret token (3), juste sous l’URL.
6. Cliquez sur Test connection (4). Entra appelle mTime et vérifie les identifiants — un test réussi est requis avant l’enregistrement.
7. Cliquez sur Save (5) dans la barre d’outils en haut.
| Test connection échoue ? | Vérifiez |
|---|---|
| Unauthorized | Le Secret token n’est pas la clé API de l’utilisateur de service de provisionnement, ou la clé a été révoquée |
| Forbidden | L’intégration de provisionnement SCIM est désactivée dans mTime |
| Not found / délai dépassé | La Tenant URL est incorrecte — elle doit se terminer par /api/scim/v2 |
Étape 6 — Configurer les mappages d’attributs
Entra décide des données que mTime reçoit via les mappages d’attributs. Un seul est obligatoire : userName, qui porte l’adresse e-mail que mTime provisionne et sur laquelle il fait la correspondance.
externalId est facultatif — vous n’avez jamais besoin de le remplir. Ne le mappez que si vous avez choisi un attribut d’employé à l’étape 1 et que vous voulez que mTime relie les utilisateurs par matricule plutôt que par adresse e-mail. Laissé non mappé, le provisionnement fonctionne exactement de la même façon et les utilisateurs sont reliés par leur adresse e-mail ; rien n’est rejeté pour un externalId manquant.- Dans le volet de provisionnement, ouvrez Provisioning sous Manage et dépliez la section Mappings. Elle liste deux mappages — Provision Microsoft Entra ID Groups et Provision Microsoft Entra ID Users — tous deux activés par défaut. Laissez Groups activé : c’est lui qui alimente le mappage des groupes vers les rôles à l’étape 8.
- Cliquez sur Provision Microsoft Entra ID Users — la liste Attribute Mapping s’ouvre.
- Uniquement si vous avez choisi un attribut d’employé à l’étape 1 : trouvez la ligne externalId, cliquez sur Edit à droite (1) et remplacez l’attribut source par défaut par l’attribut Entra qui contient le matricule — généralement employeeId. Sinon, ignorez ceci et passez à l’étape 5.
- Les autres mappages par défaut peuvent rester tels quels — mTime ignore les attributs qu’il n’utilise pas. Ceux qui comptent :
| mTime (attribut SCIM) | À remplir ? | Attribut source Entra | Sert à |
|---|---|---|---|
externalId | Facultatif — uniquement avec un attribut lié (étape 1) | employeeId (ou l’attribut qui contient votre matricule) | Relier l’utilisateur à l’employé par matricule |
userName | Obligatoire | userPrincipalName | L’adresse e-mail et l’identité de connexion de l’utilisateur, et la correspondance de repli avec l’employé |
displayName | Facultatif | displayName | Le nom de l’utilisateur |
active | Facultatif | Switch([IsSoftDeleted], , “False”, “True”, “True”, “False”) | Suspendre et réactiver l’utilisateur |
- Cliquez sur Save (2) dans la barre d’outils en haut.

Étape 7 — Créer les utilisateurs et groupes dans Entra
Les utilisateurs et groupes qui doivent arriver dans mTime vivent dans votre annuaire Entra. Vos vrais employés y sont probablement déjà — cette étape montre les champs qui comptent, à l’aide d’un utilisateur de test et d’un groupe de test (les captures d’écran utilisent Tina Test et Team Leads).
- Allez dans Entra ID > Users et cliquez sur New user > Create new user. Sur l’onglet Basics, donnez à l’utilisateur un nom principal (1) et un nom d’affichage (2).

- Facultatif — ignorez ceci sauf si vous avez choisi un attribut d’employé à l’étape 1. Laissez Employee ID vide et mTime relie l’utilisateur par adresse e-mail à la place. Si vous en avez choisi un : sur l’onglet Properties, remplissez Employee ID (1) sous Job Information avec le matricule stable de l’utilisateur (ici
test-5000) — c’est ce que le mappageexternalIdde l’étape 6 envoie à mTime, il doit donc correspondre au matricule de l’employé dans vos données RH. Dans les deux cas, cliquez sur Review + create (2) lorsque vous avez terminé.

- Allez dans Entra ID > Groups et cliquez sur New group. Laissez Group type (1) sur Security, nommez le groupe d’après le rôle mTime qu’il doit gérer (2), et sous Members cliquez sur le lien des membres (3).

- Recherchez les utilisateurs qui doivent détenir le rôle et cochez-les (1), cliquez sur Select (2) — puis cliquez sur Create (3).

Un groupe peut aussi démarrer sans membres : il crée (ou lie) quand même son rôle mTime, et les appartenances suivent dès que vous ajoutez des personnes dans Entra.
Étape 8 — Affecter les utilisateurs et groupes à l’application
Entra ne provisionne que ce qui est affecté à l’application — créer un groupe (étape 7) ne suffit pas ; la synchronisation l’ignore tant qu’il ne figure pas sur la liste d’affectation de l’application :
- Dans le menu de l’application, ouvrez Users and groups (1) sous Manage. La liste montre tout ce que la synchronisation couvre actuellement. Cliquez sur Add user/group (2) dans la barre d’outils.

- Sur la page Add Assignment, ouvrez le sélecteur Users and groups, recherchez le groupe, cochez-le (1) et cliquez sur Select (2) — puis cliquez sur Assign (3) en bas à gauche. Prenez garde à l’avertissement d’Entra : les groupes imbriqués ne se propagent pas, affectez donc chaque groupe directement.

- Le groupe apparaît maintenant dans la liste d’affectation (1). Les utilisateurs individuels peuvent être affectés de la même manière.

Cette liste fait foi parce que le paramètre Scope du provisionnement (sous Provisioning > Settings) est par défaut sur Sync only assigned users and groups — laissez-le ainsi.
Ce qui arrive dans mTime :
- Chaque utilisateur affecté devient un utilisateur mTime — relié à l’employé par le matricule lié (s’il est configuré) ou par adresse e-mail, ou doté d’une nouvelle fiche employé minimale si aucun des deux ne correspond.
- Chaque groupe affecté devient un rôle mTime. Un groupe dont le nom correspond exactement à un rôle existant est lié à ce rôle ; tout autre groupe crée un nouveau rôle vide qu’un administrateur configure ensuite sur la page des rôles.
- Les membres du groupe reçoivent automatiquement le rôle du groupe — y compris les membres ajoutés plus tard.
admin), un propriétaire de l’espace de travail doit d’abord valider ce rôle : ouvrez-le et ajoutez provisioning sous Attribuable par. Le rôle owner ne peut jamais être géré via SCIM.Étape 9 — Tester avec le provisionnement à la demande
Avant de démarrer la synchronisation complète, vérifiez la configuration avec un seul utilisateur :
- Ouvrez Provision on demand (1) en haut du menu du volet de provisionnement, choisissez un utilisateur de test (2) (affecté à l’étape 8) et provisionnez-le. Entra déroule ses quatre phases — import, périmètre, correspondance, exécution de l’action — et chaque phase doit se terminer en Success.

- Ouvrez View details (1) sur Perform action pour voir exactement ce que mTime a reçu. La ligne externalId (2) ne compte que si vous avez choisi un attribut d’employé à l’étape 1 — elle devrait alors porter le matricule. Sinon, ignorez-la : un
externalIdvide est normal et rien n’échoue à cause de cela.

- Vérifiez maintenant le côté mTime dans . L’utilisateur existe au statut invité et détient le rôle employee (1) (plus les éventuels rôles de groupe).

- Ouvrez l’employé relié : comme aucun employé ne correspondait encore, une fiche minimale a été créée — sans contrat (1) (votre intégration RH l’enrichira plus tard), avec le matricule stocké dans l’attribut lié à l’étape 1 (2).

- Testez le groupe de la même façon : ouvrez à nouveau Provision on demand, basculez le sélecteur sur l’onglet Groups et provisionnez le groupe de l’étape 8 (1). Les mêmes quatre phases doivent passer au vert.

- Dans mTime, le groupe est arrivé comme rôle sur . Créé vide et portant le badge « Géré par un groupe IdP » (1), prêt pour qu’un administrateur décide de ce qu’il permet.

- Et les membres du groupe le détiennent : l’utilisateur de test porte maintenant le rôle à côté d’employee (1).

Étape 10 — Démarrer le provisionnement
- De retour sur la vue d’ensemble de la configuration, cliquez sur Start provisioning (1) dans la barre d’outils.
- Entra exécute un cycle initial couvrant tout ce qui est affecté à l’application, puis un cycle incrémentiel environ toutes les 40 minutes qui applique les changements — y compris les désactivations et suppressions que le provisionnement à la demande ignore.
- La vue d’ensemble suit le travail : Last cycle completed time (2) et Current cycle status (3) avec la progression et les changements traités. Pause provisioning et Restart provisioning se trouvent dans la même barre d’outils, et les échecs apparaissent sous Provisioning logs (4) dans la section Monitor, chacun avec la raison renvoyée par mTime (par ex. un matricule manquant).

Étape 11 — Vérifier le cycle de vie
Faites un tour complet pour vous convaincre que tout fonctionne :
- Désactivez l’utilisateur de test dans Entra (bloquez la connexion). Après le cycle suivant, il est suspendu dans mTime et déconnecté immédiatement.
- Réactivez-le — le cycle suivant réactive l’utilisateur mTime.
- Retirez l’utilisateur de test du groupe — la synchronisation suivante révoque le rôle dans mTime ; rajoutez-le et le rôle revient.
À partir de là, la gestion des utilisateurs et des groupes se fait dans Entra. Ce que chaque rôle est autorisé à faire reste entre les mains de vos administrateurs mTime — voir Comment les groupes deviennent des rôles.
Dépannage
| Problème | Solution |
|---|---|
| Test Connection échoue | Voir le tableau de l’étape 5 — mauvais jeton, intégration désactivée ou URL incorrecte |
| « Un utilisateur avec cet externalId existe déjà » | Deux personnes différentes portent le même matricule dans l’IdP — une erreur de données à corriger dans Entra |
| Utilisateur créé mais non relié au bon employé | La valeur de l’attribut lié ne correspond pas au matricule envoyé par Entra (alignez Lier externalId à un attribut d'employé de l’étape 1 avec vos données RH), ou — en cas de correspondance par e-mail — les adresses diffèrent entre Entra et la fiche employé |
| Une fiche employé en double a été créée | Ni le matricule ni l’adresse e-mail ne correspondaient à l’employé existant — alignez-les et laissez votre intégration RH fusionner les données, ou liez un attribut à l’étape 1 pour une correspondance exacte |
| Utilisateur désactivé toujours actif dans mTime | Les désactivations ne passent que par le cycle planifié — attendez le cycle suivant (ou vérifiez que le provisionnement est démarré), ne testez pas cela à la demande |
| Le groupe n’est pas devenu un rôle | Vérifiez que le groupe est affecté à l’application (étape 8) et apparaît dans les journaux de provisionnement |
| Un changement d’appartenance à un rôle existant n’a aucun effet | Le rôle n’a pas été validé — ajoutez provisioning sous Attribuable par du rôle |
| « Un utilisateur de service de provisionnement existe déjà » | Il ne peut y en avoir qu’un — réutilisez-le, et faites tourner les identifiants en créant une nouvelle clé API à la place |
