Qu'est-ce que le provisionnement SCIM : Guide complet sur le provisionnement automatisé des utilisateurs
by Alexandre Dedourges, DevSec
Le SSO permettra aux employés de gagner beaucoup de temps en simplifiant le processus d'authentification et en évitant le provisionnement manuel. Si vous souhaitez en savoir plus sur l'authentification unique, vous pouvez lire ce qu'est l'authentification unique. Toutefois, pour garantir une sécurité optimale et l'intégrité de l'identité, il est préférable d'utiliser le SCIM.
SCIM (System for Cross-domain Identity Management) est une norme ouverte permettant d'automatiser l'échange d'informations sur l'identité des utilisateurs entre les systèmes informatiques. Cette fonctionnalité existe dans de nombreux fournisseurs d'identité comme Okta ou Microsoft Azure.
Le provisionnement du SCIM automatise la mise à jour des identités
Au fur et à mesure qu'une entreprise se développe, le nombre d'employés augmente en conséquence. Par conséquent, le nombre d'identités à gérer devient de plus en plus important, et le travail des équipes informatiques devient de plus en plus complexe pour synchroniser les données entre les systèmes. Lorsqu'un nouvel employé arrive ou qu'une personne change de nom, cela signifie que des identités doivent être gérées, créées ou mises à jour. Effectuer ces changements à la main serait un travail long et fastidieux pour vos équipes informatiques, surtout dans le contexte de la croissance rapide de votre entreprise. C'est là qu'intervient le SCIM. SCIM est un protocole créé en 2011 pour anticiper l'afflux de Single Sign-On. Il vous permet de ne plus vous soucier du provisionnement des utilisateurs. En effet, une fois mis en place avec votre IAM, chaque changement d'identité du côté du fournisseur d'identité sera pris en compte et réparti sur l'ensemble des services qui utilisent ce Single Sign-On. La sécurité de votre système sera ainsi préservée.
Cas d'utilisation du provisionnement
Par exemple, un employé qui a quitté votre entreprise ne pourra plus accéder aux services qu'il utilisait. De même, une personne qui a changé de nom après s'être mariée verra son profil mis à jour dans tous ses services. En résumé, le SCIM vous permet de maintenir les données à jour afin d'éviter tout problème. En effet, selon une étude menée par Beyond Identity, 83 % des employés ont déjà conservé un compte utilisateur auprès de leur ancienne entreprise après l'avoir quittée. De plus, 56% d'entre eux ont essayé de nuire à leurs anciens employeurs en utilisant leurs anciennes informations de connexion. Enfin, 74 % des employeurs affirment avoir subi les conséquences négatives d'un employé ayant conservé ses informations d'accès. C'est pourquoi la mise à jour des informations d'identité est cruciale pour les entreprises. C'est ce que l'on appelle la gestion du cycle de vie de l'identité. Avec Cryptr, vous pouvez facilement mettre en œuvre ce cycle de vie par le biais de SCIM pour vos organisations.
Avantages du provisionnement SCIM 2.0 : une norme pour l'intégration du provisionnement
Avec l'augmentation de l'utilisation de l'authentification unique, le standard SCIM devient de plus en plus populaire dans le monde de l'entreprise. En effet, elle est utilisée par un grand nombre d'entreprises qui ont mis en place ce type d'identification. C'est l'une des raisons de sa solidité. Avec le SCIM, les données d'identité des utilisateurs peuvent être communiquées partout de la même manière, ce qui facilite grandement son utilisation. Les données sont transférées de la même manière entre les différents services et applications. Grâce à cette standardisation des données, vous pouvez automatiser le processus de approvisionnement d’utilisateurs et de groupes, ainsi que leurs cycles de vie peuvent être automatisés. Il permet de gérer les rôles, les groupes et les permissions en un seul endroit. Les données étant transmises automatiquement, les équipes n'ont plus besoin de modifier toutes les informations sur chaque plateforme.
Synchronisation d'utilisateurs et groupes par le biais de schémas et de modèles d'extension
Le SCIM est principalement basé sur un schéma d'utilisateur commun, un schéma de groupe et des modèles d'extension. Ces derniers sont échangés via un protocole HTTP que nous développerons dans la section suivante. Une requête SCIM est également construite sur un modèle d'objet où une ressource est le dénominateur commun et où tous les objets SCIM en sont dérivés. Pour être considérée comme une ressource, elle doit posséder les attributs id, externalId et meta. Ces trois attributs constituent la base d'une ressource. D'autres éléments viendront compléter cette ressource, tels qu'un utilisateur, un EnterpriseUser, un groupe...
Comment fonctionne l'API SCIM : un standard qui utilise l'API REST pour provisionner
Le modèle opérationnel du SCIM est basé sur JSON (JavaScript Object Notation) et REST (REpresentational State Transfer). L'utilisation de l'API SCIM permettra la mise à jour des utilisateurs par le biais de CRUD (Create, Read Update, Delete) pour tous les systèmes et applications concernés. Pour créer, mettre à jour ou supprimer un utilisateur, il sera nécessaire d'utiliser des requêtes API. SCIM offre un moyen simple de gérer les comptes d'utilisateurs par le biais d'un point de terminaison SCIM, ce qui facilite la tâche des équipes informatiques. Sans SCIM, il est plus compliqué d'automatiser le provisionnement des utilisateurs, ce qui peut entraîner des incohérences et des erreurs manuelles.
Mise en œuvre du SCIM : les points de l'API SCIM
Supposons qu'un nouvel employé rejoigne Cryptr. Un objet « Utilisateur » devra donc être créé. Cet objet sera composé de différents attributs, tels que « Nom », « Prénom », « Age »... De plus, les informations devront être réparties dans tous les outils et applications SaaS afin que le nouvel employé puisse accéder à tous les outils nécessaires à son travail.
Il s'agit de la structure JSON que nous pourrions être amenés à transmettre :
Afin de gérer ces structures, une liste de points finaux de base est disponible directement via le protocole SCIM :
Nous allons maintenant devoir utiliser des requêtes afin de transmettre des données à toutes nos applications. Pour ce faire, différentes méthodes HTTP existent :
Nous utiliserons donc une méthode POST, puisque - comme le montre le tableau ci-dessus - la méthode POST permet la création de ressources, contrairement aux autres méthodes.
La création d'un utilisateur via une requête HTTP POST se présente sous le format suivant :
Ce qui, avec l'exemple précédent, donnerait :
Ici, nous travaillons avec la version 2 de l'API SCIM et nous voulons créer un nouvel utilisateur - nous travaillerons donc sur la ressource « users ». Une fois notre requête POST terminée, notre utilisateur sera créé sur la base des paramètres fournis au format JSON. Si la demande aboutit, une réponse JSON sera envoyée et pourra prendre la forme suivante :
Nous pouvons voir qu'un identifiant a été créé, ce qui nous permettra d'identifier plus facilement notre utilisateur à l'avenir.
Pour les autres méthodes, la requête sera pratiquement la même - à une exception près : l'ajout du paramètre ID à notre URL (bien sûr, nous devrons également utiliser la bonne méthode) :
Un cas d'utilisation classique du provisionnement des utilisateurs SCIM avec l'approvisionnement Microsoft Entra ID (Azure Active Directory)
La gestion efficace de l'accès des utilisateurs est cruciale pour toute organisation et nombre d'entre elles font appel à Microsoft pour gérer les données des utilisateurs. Le service d’approvisionnement Microsoft Entra ID (anciennement Azure Active Directory) offre une solution pour le provisionnement et le déprovisionnement des utilisateurs. Avec Microsoft, vous pouvez gérer efficacement les événements du cycle de vie de l'utilisateur, en veillant à ce que le provisionnement et le déprovisionnement des utilisateurs soient transparents et sécurisés. En fin de compte, le SCIM résout les problèmes de gestion des utilisateurs, ce qui permet aux entreprises de se concentrer sur ce qui compte le plus. Cependant, la mise en œuvre d'une solution dans votre système qui accepte le SCIM peut prendre du temps. C'est pourquoi Cryptr a été pensé. Pour que vous puissiez vous concentrer sur vos propres besoins.
Le provisioning SCIM apporte sécurité, productivité et expérience utilisateur
En résumé, le protocole SCIM permet une meilleure gestion des identités. En combinant la sécurité, la productivité et l'expérience utilisateur, il est devenu un « must » pour toute entreprise utilisant un SSO. En outre, la capacité d'un fournisseur de services à être « SSO-friendly » devient de plus en plus importante, voire une nécessité. L'un des objectifs des applications SaaS est donc de devenir « SSO ready », c'est-à-dire d'être capable de se connecter aux différents types de solutions de SSO et de gestion des identités et des accès qu'elles peuvent rencontrer par l'intermédiaire de leurs clients ou de leurs prospects. Répondre à cette exigence est donc à la fois une question de sécurité et une question commerciale lorsqu'il s'agit de développer votre marché et de contracter avec des clients qui ont de telles attentes. En quelques lignes de code, Cryptr peut rendre votre authentification compatible avec tous les types de SSO (SAML, ADFS, OIDC) et de fournisseurs d'identité (Okta, Ping Identity, Auth0, OneLogin, Google,...) que vous pouvez rencontrer. Bien entendu, le protocole SCIM que nous venons d'aborder dans cet article sera également couvert ! Il vous permettra d'adopter facilement les SSO.
Activer le provisionnement SCIM avec Cryptr : le SCIM connector pour le fournisseur de services SaaS
L'intégration SCIM avec Cryptr facilite la gestion des cycles de vie des utilisateurs. En effet, Cryptr fera le lien entre vous et les différents IdP de vos clients. Le serveur SCIM nous envoie les données que nous recevons en jouant le rôle de client SCIM. Une fois les données reçues, nous pouvons stocker les utilisateurs pour vous ou simplement vous envoyer les informations de provisionnement d'une manière standardisée. En outre, Cryptr s'appuie sur un système événementiel utilisant des webhooks, ce qui le rend facile à intégrer, hautement sécurisé et convivial pour les développeurs, vous permettant de réagir aux événements en temps réel et de gérer les données des utilisateurs de manière efficace. Mieux encore, aucune connaissance préalable du SCIM n'est requise. Cryptr simplifie le processus d'adoption, ce qui permet à vos équipes de le mettre en œuvre sans avoir à se plonger dans les spécificités du protocole SCIM.
Avec Cryptr, les développeurs peuvent utiliser SCIM et connecter leurs clients à n'importe quel fournisseur Single Sign-On. Ces deux solutions, le SCIM avec Cryptr Directory Sync et l'intégration d'authentification unique sont indépendantes mais se complètent parfaitement. Vous pouvez choisir d'adopter l'une ou l'autre, ou les deux, en fonction de vos besoins, afin de garantir une expérience de gestion des utilisateurs fluide, sécurisée et flexible.
De plus, Cryptr propose une fonction dédiée pour aider l'administrateur informatique de votre client à configurer le SCIM en moins de 5 minutes. Il configure le provisionnement par le biais d'une interface intuitive et bien conçue, le administrateurs sont guidés pas à pas, ce qui rend l'ensemble du processus de configuration simple et efficace.
Add enterprise SSO for free
Cryptr simplifies user management for your business: quick setup, guaranteed security, and multiple free features. With robust authentication and easy, fast configuration, we meet businesses' security needs hassle-free.