Skip to main content

Qu’est-ce que la gestion des identités et des accès (IAM) ?

La gestion des identités et des accès permet de contrôler la validation des utilisateurs ainsi que l’accès aux ressources. Communément appelée IAM, cette technologie veille à ce que les bonnes personnes accèdent aux bonnes ressources numériques, au bon moment et pour les bonnes raisons.

Concepts de base de l’IAM

Pour comprendre l’IAM, vous devez connaître certains concepts fondamentaux :
  • Une ressource numérique est toute combinaison d’applications et de données dans un système informatique. Parmi les exemples de ressources numériques, on compte les applications Web, les API, les plateformes, les appareils ou les bases de données.
  • Au cœur de l’IAM se trouve l’identité. Quelqu’un souhaite accéder à votre ressource. Il peut s’agir d’un client, d’un employé, d’un membre, d’un participant, etc. En IAM, un compte d’utilisateur est une . Les comptes d’utilisateur peuvent aussi représenter des entités non humaines, comme des logiciels, des appareils de l’Internet des objets ou des robots.
Schéma simple montrant un utilisateur accédant à une ressource
Schéma simple montrant que le système IAM contrôle l’accès de l’utilisateur à une ressource
  • L’authentification consiste à vérifier une identité numérique. Quelqu’un (ou quelque chose) s’authentifie pour prouver qu’il est bien l’utilisateur qu’il prétend être.
  • L’autorisation est le processus qui détermine aux quelles ressources un utilisateur peut accéder.

La différence entre l’authentification et l’autorisation

Il est courant de confondre l’authentification et l’autorisation, parce que, pour les utilisateurs, elles peuvent donner l’impression de faire partie d’une seule et même expérience. Il s’agit pourtant de deux processus distincts : l’authentification confirme l’identité d’un utilisateur, tandis que l’autorisation lui accorde ou lui refuse l’accès à certaines ressources. Vous pouvez voir l’authentification et l’autorisation comme le système de sécurité d’un immeuble de bureaux. Les utilisateurs sont les personnes qui veulent entrer dans l’immeuble. Les ressources auxquelles les gens veulent accéder sont les différentes zones de l’immeuble : étages, pièces, etc. Authentification : Lorsque vous entrez dans l’immeuble, vous devez montrer votre badge d’identité avec photo à l’agent de sécurité. L’agent compare la photo sur le badge à votre visage. Si elles correspondent, il vous laisse passer pour tenter d’accéder aux différentes zones de l’immeuble. L’agent ne vous dit pas à quelles pièces vous pouvez accéder; il vérifie seulement que vous êtes bien la personne que vous prétendez être. C’est cela, l’authentification : confirmer l’identité de l’utilisateur.
Schéma montrant que l’authentification ressemble à un agent de sécurité qui vérifie votre badge à l’entrée
Autorisation : Dans ce scénario, imaginez que les ascenseurs et les portes de l’immeuble sont munis de lecteurs de badge. La puce de votre badge vous donne accès uniquement au premier étage, celui qu’occupe votre entreprise. Si vous passez votre badge pour entrer à n’importe quel autre étage, votre accès vous est refusé. Vous pouvez accéder à votre bureau privé, mais pas à ceux de vos collègues. Vous pouvez entrer dans la salle des fournitures, mais pas dans la salle des serveurs. C’est cela, l’autorisation : accorder ou refuser l’accès à différentes ressources selon l’identité.
Schéma montrant que l’autorisation ressemble à un badge qui vous donne accès à seulement certaines pièces d’un immeuble
Pour en savoir plus sur l’authentification et l’autorisation, consultez Authentification vs. autorisation.

Que fait IAM ?

La gestion des identités et des accès vous permet de contrôler la validation des utilisateurs et l’accès aux ressources :
  • Comment les utilisateurs intègrent votre système
  • Quelles informations sur les utilisateurs stocker
  • Comment les utilisateurs peuvent prouver leur identité
  • Quand et à quelle fréquence les utilisateurs doivent prouver leur identité
  • L’expérience liée à la vérification de l’identité
  • Qui peut ou non accéder à différentes ressources
Vous intégrez IAM à votre application, API, appareil, stockage de données ou autre technologie. Cette intégration peut être très simple. Par exemple, votre application Web peut s’appuyer entièrement sur Facebook pour l’authentification et appliquer une politique d’autorisation tout ou rien. Votre appli effectue une vérification simple : si un utilisateur n’est pas déjà connecté à Facebook dans son navigateur, vous le redirigez pour qu’il s’y connecte. Une fois authentifiés, tous les utilisateurs ont accès à tout dans votre appli. Il est peu probable qu’une solution IAM aussi simple réponde aux besoins de vos utilisateurs, de votre organisation, de votre secteur ou de vos exigences de conformité. En pratique, IAM est complexe. La plupart des systèmes nécessitent une combinaison de ces capacités :
  • Expériences d’inscription et de connexion fluides : Des expériences d’inscription et de connexion fluides et professionnelles se déroulent dans votre appli, avec l’apparence et le langage de votre marque.
  • Multiples sources d’identités utilisateur : Les utilisateurs s’attendent à pouvoir se connecter à l’aide de divers fournisseurs d’identité sociaux (comme Google ou Linkedin), d’entreprise (comme Microsoft Active Directory) et d’autres fournisseurs d’identité.
  • (MFA) : À une époque où les mots de passe sont souvent volés, exiger une preuve d’identité supplémentaire est devenu la nouvelle norme. L’authentification par empreinte digitale et les mots de passe à usage unique sont des exemples courants de méthodes d’authentification. Pour en savoir plus, consultez Authentification multifacteur (MFA).
  • Authentification progressive : L’accès aux capacités avancées et aux renseignements sensibles exige une preuve d’identité plus forte que les tâches et les données du quotidien. L’authentification progressive exige une vérification d’identité supplémentaire pour certaines zones et fonctionnalités. Pour en savoir plus, consultez Ajouter l’authentification progressive.
  •  : Empêcher les bots et les de s’introduire dans votre système est essentiel à la cybersécurité. Pour en savoir plus, consultez Protection contre les attaques.
  • Contrôle d’accès basé sur les rôles (RBAC) : À mesure que le nombre d’utilisateurs augmente, gérer l’accès de chaque personne individuellement devient rapidement impraticable. Avec le RBAC, les personnes qui ont le même rôle ont le même accès aux ressources. Pour en savoir plus, consultez Contrôle d’accès basé sur les rôles.
  • (FGA) : Lorsque vous avez besoin de plus d’options pour gérer l’accès des utilisateurs à vos ressources ou technologies, vous pouvez utiliser le contrôle d’accès basé sur les relations pour aller au-delà du contrôle basé sur les rôles. Vous pouvez accorder à des utilisateurs individuels l’accès à certaines ressources et déterminer la meilleure solution pour votre cas d’utilisation précis. Pour en savoir plus, consultez Qu’est-ce que l’autorisation fine ?
Face à ce niveau de complexité, de nombreux développeurs s’appuient sur une plateforme IAM comme Auth0 au lieu de créer leurs propres solutions.

Comment fonctionne l’IAM?

La « gestion des identités et des accès » n’est pas un système unique clairement défini. L’IAM est une discipline et un type de framework servant à résoudre le problème de l’accès sécurisé aux ressources numériques.  Il existe une multitude d’approches pour mettre en œuvre un système IAM. Cette section présente les éléments et les pratiques que l’on retrouve dans les mises en œuvre courantes.

Fournisseurs d’identité

Autrefois, la norme en matière de gestion des identités et des accès était qu’un système crée et gère lui-même les renseignements d’identité de ses utilisateurs. Chaque fois qu’un utilisateur voulait utiliser une nouvelle application Web, il remplissait un formulaire pour créer un compte. L’application stockait tous ses renseignements, y compris ses identifiants de connexion, et effectuait sa propre authentification chaque fois qu’un utilisateur se connectait. À mesure qu’Internet a pris de l’ampleur et que de plus en plus d’applications sont devenues accessibles, la plupart des gens se sont retrouvés avec d’innombrables comptes d’utilisateur, chacun avec son propre nom de compte et son propre mot de passe à retenir. De nombreuses applications continuent de fonctionner ainsi. Mais bien d’autres s’appuient maintenant sur des afin de réduire les efforts de développement et de maintenance, tant pour elles-mêmes que pour leurs utilisateurs. Un fournisseur d’identité crée, tient à jour et gère les renseignements d’identité, et peut fournir des services d’authentification à d’autres applications. Par exemple, Google Accounts est un fournisseur d’identité. Il stocke des renseignements de compte comme votre nom d’utilisateur, votre nom complet, votre titre de poste et votre adresse courriel. Le magazine en ligne Slate vous permet de vous connecter avec Google (ou un autre fournisseur d’identité) au lieu de devoir saisir de nouveau vos renseignements et les enregistrer.
Capture d’écran de la connexion à Slate magazine
Les fournisseurs d’identité ne partagent pas vos identifiants d’authentification avec les applications qui s’appuient sur eux. Slate, par exemple, ne voit jamais votre mot de passe Google. Google indique seulement à Slate que vous avez prouvé votre identité. Parmi les autres fournisseurs d’identité, on trouve les réseaux sociaux (comme Facebook ou LinkedIn), les fournisseurs d’entreprise (comme Microsoft Active Directory) et les fournisseurs d’identité légale (comme Swedish BankID).

Facteurs d’authentification

Les facteurs d’authentification sont des moyens de prouver l’identité d’un utilisateur. Ils se répartissent généralement en catégories de base comme celles-ci : Les systèmes IAM exigent un ou plusieurs facteurs d’authentification pour vérifier l’identité.

Normes d’authentification et d’autorisation

Les normes d’authentification et d’autorisation sont des spécifications ouvertes et des protocoles qui indiquent comment :
  • Concevoir des systèmes IAM pour gérer les identités
  • Transférer des données personnelles de façon sécuritaire
  • Déterminer qui peut accéder aux ressources
Ces normes de l’industrie de l’IAM sont considérées comme les plus sécuritaires, les plus fiables et les plus faciles à mettre en œuvre :

OAuth 2.0

est un protocole de délégation permettant d’accéder à des API et constitue la norme de l’industrie en matière d’IAM. En tant que protocole d’autorisation ouvert, OAuth 2.0 permet à une application d’accéder, au nom d’un utilisateur, à des ressources hébergées par d’autres applications web, sans jamais partager les identifiants de cet utilisateur. C’est la norme qui permet aux développeurs tiers de s’appuyer sur de grandes plateformes sociales comme Facebook, Google et Twitter pour la connexion. Pour en savoir plus, consultez le cadre d’autorisation OAuth 2.0.

Open ID Connect

Couche d’identité simple qui s’ajoute à OAuth 2.0, Connect (OIDC) permet de vérifier facilement l’identité d’un utilisateur et d’obtenir des renseignements de base sur son profil auprès du fournisseur d’identité. OIDC est un autre protocole ouvert. Pour en savoir plus, consultez OpenID Connect Protocol.

JSON Web Tokens

(JWT) sont une norme ouverte qui définit une méthode compacte et autonome pour transmettre de façon sécurisée de l’information entre parties sous la forme d’un objet JSON. Les JWT peuvent être vérifiés et considérés comme fiables parce qu’ils sont signés numériquement. Ils peuvent servir à transmettre l’identité des utilisateurs authentifiés entre le fournisseur d’identité et le service qui demande l’authentification. Ils peuvent aussi être authentifiés et chiffrés. Pour en savoir plus, consultez JSON Web Tokens.

Security Assertion Markup Language (SAML)

(SAML) est un format de données ouvert et normalisé, basé sur XML, qui permet aux entreprises de transmettre des informations sur l’authentification et l’autorisation des utilisateurs à des entreprises partenaires et à des applications d’entreprise utilisées par leurs employés. Pour en savoir plus, consultez SAML.

Web Services Federation (WS-Fed)

Développée par Microsoft et largement utilisée dans ses applications, cette norme définit la manière dont les peuvent être transportés entre différentes entités pour échanger des renseignements sur l’identité et l’autorisation. Pour en savoir plus, consultez Web Services Federation Protocol.

Pourquoi utiliser une plateforme IAM?

Pourquoi tant de développeurs choisissent-ils de s’appuyer sur une plateforme de gestion des identités et des accès plutôt que de concevoir leur propre solution à partir de zéro? Les attentes des utilisateurs, les exigences des clients et les normes de conformité posent d’importants défis techniques. Avec de multiples sources d’utilisateurs, divers facteurs d’authentification et des normes ouvertes de l’industrie, l’étendue des connaissances et le volume de travail nécessaires pour concevoir un système IAM typique peuvent être énormes. Une plateforme IAM robuste prend en charge tous les fournisseurs d’identité et les facteurs d’authentification, offre des API pour faciliter l’intégration à vos logiciels et s’appuie sur les normes de l’industrie les plus sécuritaires en matière d’authentification et d’autorisation. Pour ceux qui n’ont pas encore décidé s’il vaut mieux concevoir ou acheter une solution IAM, Build vs. Buy: Guide to Evaluating Identity Management constitue une ressource utile.