Protocoles d'authentification modernes : de OAuth 2.0 aux Passkeys
À l'ère numérique, « Qui êtes-vous ? » et « Qu'êtes-vous autorisé à faire ? » sont deux des questions les plus critiques auxquelles un système doit répondre. L'Authentification (AuthN) et l'Autorisation (AuthZ) sont les piliers de la sécurité. Ce guide explore les protocoles modernes qui gèrent ces processus.
1. Identité fédérée et Autorisation
OAuth 2.0 (Autorisation)
OAuth 2.0 est le protocole standard de l'industrie pour l'autorisation. Il permet à un site Web ou à une application d'accéder à des ressources hébergées par d'autres services Web au nom d'un utilisateur (par exemple, « Se connecter avec Google »).
- Bearer Token : Le type de jeton d'accès le plus courant utilisé dans OAuth 2.0. Si vous possédez le jeton, vous avez l'accès.
- API Key : Une forme d'authentification plus simple, souvent utilisée pour la communication de machine à machine.
OpenID Connect (OIDC)
Construit au-dessus d'OAuth 2.0, OIDC ajoute une couche d'identité. Alors qu'OAuth concerne l'accès, OIDC concerne l'identité. Il permet aux clients de vérifier l'identité de l'utilisateur final en fonction de l'authentification effectuée par un serveur d'autorisation.
SAML (Security Assertion Markup Language)
Un standard basé sur XML utilisé principalement dans les environnements d'entreprise pour l'authentification unique (SSO). Il permet aux fournisseurs d'identité (IdP) de transmettre des informations d'authentification aux fournisseurs de services (SP).
2. Services d'annuaire d'entreprise et hérités
LDAP (Lightweight Directory Access Protocol)
Un protocole mature utilisé pour accéder et maintenir des services d'information d'annuaire distribués. C'est l'épine dorsale de nombreuses bases de données d'employés en entreprise.
Kerberos
Un protocole d'authentification réseau conçu pour fournir une authentification forte pour les applications client/serveur en utilisant la cryptographie à clé secrète. C'est la méthode d'authentification par défaut dans Windows Active Directory.
3. Authentification multi-facteurs (MFA)
OTP (One-Time Password)
- HOTP : Mot de passe à usage unique basé sur HMAC (basé sur des événements).
- TOTP : Mot de passe à usage unique basé sur le temps (utilisé par des applications comme Google Authenticator).
4. L'avenir sans mot de passe : FIDO et WebAuthn
FIDO2 & WebAuthn
L'Alliance FIDO a créé ces standards pour remplacer les mots de passe par une cryptographie à clé publique sécurisée. WebAuthn est l'API du navigateur qui permet cela.
Passkeys
Les Passkeys sont une implémentation spécifique des standards FIDO qui permettent aux utilisateurs de se connecter à des sites Web et à des applications en utilisant les mêmes données biométriques ou le même code PIN qu'ils utilisent pour déverrouiller leurs appareils (FaceID, empreinte digitale). Ils sont synchronisés entre les appareils via le cloud (Apple iCloud, Google Password Manager).
U2F (Universal 2nd Factor)
Un standard FIDO plus ancien, nécessitant généralement une clé de sécurité physique (comme une YubiKey) comme deuxième facteur.
Résumé comparatif
| Protocole | Type | Cas d'utilisation principal | Format |
|---|---|---|---|
| OAuth 2.0 | Autorisation | Accès API, intégration tierce | JSON / JWT |
| OIDC | Identité | Boutons « Se connecter avec... » | JWT (ID Token) |
| SAML | Identité/SSO | Connexion d'entreprise | XML |
| WebAuthn | AuthN | Sans mot de passe / Passkeys | Crypto à clé publique |
| LDAP | Annuaire | Gestion des utilisateurs d'entreprise | Binaire |
Conclusion
Le passage des mots de passe aux Passkeys et à OIDC rend Internet plus sûr et plus convivial. Alors qu'OAuth 2.0 reste le roi de l'autorisation API, l'avenir de la connexion des utilisateurs est sans aucun doute matériel et sans mot de passe. La compréhension de ces protocoles est essentielle pour tout développeur créant des applications sécurisées aujourd'hui.