FIDO2
Introduction
FIDO2 est un ensemble de normes et de technologies qui promettent d'offrir une authentification forte interopérable, basée sur l'ICP, pour les clients du web et des applications (y compris les clients mobiles natifs). Lorsque l'authentification FIDO2 est utilisée comme premier facteur, elle peut remplacer l'authentification par nom d'utilisateur et mot de passe en offrant une alternative solide et résistante au phishing, ainsi qu'une excellente expérience pour l'utilisateur final. IBM Security Verify supporte FIDO2 pour l'authentification à ses propres interfaces web et pour l'accès aux applications intégrées via l'authentification unique. L'ajout d'une authentification sans mot de passe à vos applications, sans écrire de code, est facilement réalisable dans Verify.

Authentification FIDO2 sans mot de passe
IBM Security Verify peut également fournir des services FIDO2 directement aux applications personnalisées agissant en tant que FIDO2 Relying Parties. Cette intégration plus complexe permet à une application de garder le contrôle total de l'expérience de l'utilisateur.
Soutien et adoption
FIDO2 repose sur le fait que l'utilisateur final dispose d'un authentificateur FIDO2-capable. La bonne nouvelle, en ce qui concerne l'adoption, c'est que de nombreux ordinateurs et téléphones intègrent désormais des authentificateurs de la plateforme FIDO2. La barre tactile d'un Mac ou le matériel Windows Hello d'un PC peuvent tous deux faire office d'authentificateurs FIDO2. Les derniers appareils iOS et Android supportent nativement FIDO2 en conjonction avec leurs capteurs biométriques.
FIDO2 soutient également le concept d'authentificateurs portables. Il s'agit de petites "clés" externes qui se connectent à un ordinateur ou à un téléphone via USB, Bluetooth ou NFC. Ils peuvent être dotés d'un capteur biométrique intégré ou utiliser un code PIN pour vérifier l'identité de l'utilisateur.
La prise en charge des applications côté client est également nécessaire pour FIDO2. Là encore, il y a de bonnes nouvelles. Tous les principaux fournisseurs de navigateurs prennent désormais en charge l'API WebAuthn (JavaScript) qui permet aux applications web de communiquer avec les authentificateurs FIDO2.
Navigateurs et applications natives
Les applications natives (qui ne sont pas des navigateurs) peuvent également prendre en charge l'authentification FIDO2 via des SDK de plateforme, mais cet article se concentre sur l'utilisation de FIDO2 lorsque le client est un navigateur web.
Composants
Les normes FIDO2 décrivent un certain nombre de composants. Le diagramme suivant montre ces composants dans un diagramme d'architecture pour le cas d'utilisation WebAuthn.

Architecture FIDO2 WebAuthn
Vous pouvez voir dans le diagramme d'architecture que IBM Security Verify agit en tant que serveur FIDO2. Lorsqu'elle est utilisée pour intégrer l'authentification FIDO2 dans une application web personnalisée, l'application web assure la médiation des messages FIDO2 entre les API WebAuthn du navigateur et les API REST IBM Security Verify FIDO2.
Enregistrement
Pour pouvoir utiliser la méthode d'authentification FIDO2, un utilisateur doit avoir préalablement enregistré un authentificateur FIDO2 sur son compte.
L'enregistrement s'effectue en obtenant un défi d'attestation du serveur FIDO2 et en le transmettant à l'API WebAuthn dans le navigateur (à l'aide de JavaScript côté client). À ce stade, le navigateur prend le contrôle et gère le processus d'enregistrement avec l'authentificateur. L'API WebAuthn renvoie un message de réponse de l'authentificateur qui doit être transmis au serveur FIDO2.
Le serveur FIDO2 valide la réponse au défi et associe l'authentificateur FIDO2 au compte de l'utilisateur final. Il renvoie un message de réussite lorsque cette opération est terminée.

Flux d'enregistrement FIDO2
Authentification
L'authentification FIDO2 est réalisée en obtenant un défi d'assertion du serveur FIDO2 et en le transmettant à l'API WebAuthn dans le navigateur (à l'aide de JavaScript côté client). À ce stade, le navigateur prend le contrôle et gère le processus d'authentification avec l'authentificateur. L'API WebAuthn renvoie un message de réponse de l'authentificateur qui doit être transmis au serveur FIDO2.
Le serveur FIDO2 valide la réponse au défi et recherche le compte de l'utilisateur final associé à l'authentificateur validé. Il renvoie un message contenant l'UUID de l'utilisateur authentifié.
Notez qu'il s'agit de l'UUID interne du Cloud Directory de l'utilisateur. Un appel à l'interface SCIM est nécessaire pour lire les données utilisateur associées à cet utilisateur.

Flux d'authentification FIDO2
Métadonnées
Les fabricants d'appareils FIDO2 peuvent fournir des métadonnées pour leurs appareils. L'utilisation de fichiers de métadonnées n'est pas nécessaire pour FIDO2, mais ils offrent des possibilités supplémentaires.
Un fichier de métadonnées contient des informations sur un ensemble d'authentifiants, telles que la marque, le modèle de l'appareil, une image de marque et les capacités de l'appareil. Elle peut être utilisée pour afficher des informations à l'intention de l'utilisateur final sur les authentificateurs qu'il a enregistrés.
Un fichier de métadonnées contient également un certificat public qui peut être utilisé pour valider les certificats d'attestation présentés par les dispositifs couverts par les métadonnées. Limiter l'enregistrement aux dispositifs qui présentent un certificat d'attestation signé par une autorité particulière peut être utilisé pour limiter les authentificateurs FIDO2 qui peuvent être utilisés avec un Relying Party. Cela peut être utile dans le cadre d'un déploiement où seules les clés approuvées par l'entreprise peuvent être utilisées.
Jon Harry, IBM Security
Updated 16 days ago