OpenID Connect (OIDC)

Qu’est-ce que OpenID Connect ?

OpenID Connect, également connu sous le nom d’OIDC, signifie simplement qu’une seule clé permet de se connecter à de nombreux services Internet différents sans avoir à se souvenir de plusieurs mots de passe. C’est un moyen d’activer l’authentification unique (SSO). OpenID Connect s’appuie sur OAuth2. OAuth 2.0 est le fondement d’OpenID Connect. Il s’agit d’un cadre d’autorisation qui permet aux applications d’obtenir un accès limité aux comptes d’utilisateurs. OAuth 2.0 gère la permission d’accéder aux ressources au nom de l’utilisateur, sans révéler les détails de l’utilisateur (tels que les mots de passe) à l’application. Les différences entre OAuth2.0 et OpenID sont expliquées plus loin dans cet article.

OpenID connect

Exemple d’un cas d’usage d’OpenID Connect

Utiliser OpenID Connect, c’est comme disposer d’un laissez-passer VIP qui vérifie votre identité. Imaginez que vous vous rendiez à un festival de musique avec différentes scènes (sites web). Au lieu de faire la queue à chaque scène et de montrer votre carte d’identité (en vous connectant avec différents comptes), vous présentez simplement votre pass VIP (lien OpenID) à l’entrée. La sécurité (le service de confiance) acquiesce et dit : « Nous vous connaissons, allez-y. » De cette manière, chaque scène sait que vous êtes un invité validé, et vous pouvez vous déplacer librement sans avoir à présenter à nouveau votre billet d’entrée.

Comment fonctionne OpenID Connect ?

Le processus d’authentification avec OpenID Connect se déroule de la manière suivsante :

  1. L’utilisateur lance une application
  2. L’application le dirige vers le fournisseur d’identité pour l’authentification.
  3. L’utilisateur se connecte au fournisseur d’identité avec ses identifiants de connexion existants. Il peut s’agir d’un nom d’utilisateur et d’un mot de passe, ou de tout autre forme d’authentification prise en charge par le fournisseur d’identité.
  4. Une fois l’authentification réussie, l’utilisateur est renvoyé vers l’application.
  5. L’application conserve la session de l’utilisateur jusqu’à ce que celui-ci se déconnecte ou que la session expire.

Cas d'usage OpenID

OpenID Connect vs OAuth

OpenID Connect et OAuth sont souvent confondus car ils traitent tous deux de l’authentification et de l’autorisation en ligne. Cependant, ils remplissent des fonctions différentes dans le paysage numérique.
Imaginez que vous vous rendiez à un concert. À l’entrée, deux équipes veillent à ce que tout se passe bien et en toute sécurité : l’une s’occupe des contrôles d’identité et l’autre de la gestion des accès. Dans notre monde numérique, OpenID Connect et OAuth jouent à peu près ces rôles.

OpenID Connect :

  • L’objectif : OpenID Connect est spécifiquement conçu pour l’authentification. Cela signifie qu’il confirme l’identité d’un utilisateur. En fait, il dit : « Oui, vous êtes la personne que vous prétendez être ».
  • L’usage : Lorsque vous vous connectez à un site web ou à une application avec, par exemple, votre compte Google, vous utilisez OpenID Connect. Il n’est donc pas nécessaire de créer un nom d’utilisateur et un mot de passe distincts pour chaque service.
  • Le fonctionnement : OpenID Connect vérifie votre identité par l’intermédiaire d’un tiers (tel que Google) et partage cette confirmation avec les applications auxquelles vous vous connectez.

OAuth :

  • L’objectif : OAuth, quant à lui, est conçu pour l’autorisation. Il permet aux sites web ou aux applications d’effectuer certaines actions ou d’accéder à vos données sans partager votre mot de passe. OAuth détermine les parties du concert que vous pouvez voir en fonction de votre type de billet. Ils veillent à ce que vous n’ayez accès qu’à ce que vous êtes autorisé à voir ou à utiliser.
  • L’usage: Si une application souhaite accéder à vos contacts Google, elle utilise OAuth pour obtenir cette autorisation.
  • Le fonctionnement : OAuth vous permet d’accorder des droits spécifiques à une application, comme l’accès à vos photos ou à vos courriels, sans révéler vos données de connexion réelles.

En résumé :

  • OpenID Connect = Qui êtes vous ? :Il confirme votre identité lorsque vous vous connectez avec votre compte, par exemple Google.
  • OAuth = Qu’avez-vous le droit de faire ? : Il gère l’accès à vos données ou services sans partager votre mot de passe.

Comme lors d’un concert, ces deux systèmes fonctionnent ensemble pour rendre votre expérience en ligne sûre, fluide et conviviale. OpenID Connect garantit que vous êtes bien celui que vous prétendez être, et OAuth que vous n’avez accès qu’à ce que vous êtes autorisé à voir ou à faire.

OpenID Connect vs OAuth2

Imaginez que vous utilisiez une nouvelle application qui vous demande de vous connecter avec votre compte Google. C’est là qu’intervient OpenID Connect. Et si cette même application vous demande d’accéder à vos contacts Google, OAuth 2.0 gère cette autorisation. OpenID Connect identifie « qui vous êtes », tandis qu’OAuth 2.0 gère « ce que vous êtes autorisé à faire » avec vos données.

En résumé :

  • OpenID Connect = Contrôle d’identité : « Je confirme l’identité de cette personne ».
  • OAuth 2.0 = Contrôle d’accès : « Il gère ce que vous êtes autorisé à faire ou à voir avec les données de cette personne.

OpenID vs SAML

OpenID et SAML sont très similaires. SAML (Security Assertion Markup Language) et OpenID Connect sont tous deux des protocoles utilisés pour l’authentification et l’autorisation dans les services en ligne, avec un accent particulier sur l’authentification unique (SSO). Ils permettent aux utilisateurs d’utiliser un seul jeu d’identifiants de connexion pour accéder à plusieurs applications, ce qui accroît la commodité et la sécurité.
Bien qu’ils visent tous deux le même objectif, ils diffèrent dans leur fonctionnement.

Fonctionnement d’OpenID Connect :

OpenID Connect est basé sur OAuth 2.0 mais ajoute une couche supplémentaire pour la vérification de l’identité. Cela signifie qu’il fournit à la fois un contrôle d’accès (comme OAuth 2.0) et une vérification d’identité. Il envoie les informations relatives à l’identité de l’utilisateur sous la forme d’un jeton d’identité. Cela se fait à l’aide d’un jeton Web JSON (JWT). La configuration d’OpenID Connect est souvent plus simple car le protocole est plus standardisé entre les différentes implémentations.

Fonctionnement de SAML :

SAML utilise XML pour transférer des informations sur les utilisateurs entre un fournisseur d’identité (IdP) et un fournisseur de services (SP), contrairement à JSON Web Token (JWT). Il peut y avoir des variations dans la manière dont les différents fournisseurs d’identité mettent en œuvre SAML, ce qui nécessite un alignement supplémentaire.

Sécuriser l’IAM avec OpenID et SAML

Pour garantir une authentification sécurisée, SAML et OpenID Connect sont essentiels. Dans notre solution de gestion des identités et des accès, nous intégrons à la fois SAML et OpenID Connect pour fournir une authentification utilisateur rationalisée et sécurisée.
OpenID joue un rôle important dans la sécurité des données, mais ce n’est qu’un aspect d’une approche globale.

OpenID Connect, souvent abrégé en OIDC, signifie qu’avec une seule clé, vous avez accès à divers services en ligne, éliminant ainsi la nécessité de se souvenir de plusieurs mots de passe. Ce système fournit une méthode pour réaliser l’authentification unique (SSO).

Vous pouvez ainsi vous connecter en toute sécurité à différentes plateformes sans avoir à vous Ré-authentifier.

OpenID Connect et OAuth sont souvent confondus en raison de leur implication dans l’authentification et l’autorisation en ligne. Pourtant, ils ont chacun un rôle unique dans le monde numérique. OpenID Connect se concentre spécifiquement sur l’authentification, tandis qu’OAuth se concentre sur l’octroi de droits d’accès et d’autorisation.

Bien qu’OAuth 2.0 et OpenID Connect présentent des similitudes, leurs fonctionnalités diffèrent. OpenID Connect s’appuie sur OAuth 2.0 mais fournit une vérification de l’identité. OAuth 2.0 contrôle les actions que vous pouvez effectuer ou les informations que vous pouvez consulter concernant les données d’une personne.

Si OpenID et SAML visent tous deux à faciliter l’authentification unique (SSO), leur approche technique diffère. OpenID utilise un jeton Web JSON (JWT), tandis que SAML utilise XML.