L'authentification est le processus par lequel un système vérifie l'identité d'un utilisateur, d'un service ou d'un appareil avant de lui accorder l'accès à des ressources protégées. C'est la première ligne de défense de toute architecture de sécurité.
On distingue généralement trois facteurs d'authentification :
| Facteur | Description | Exemple |
|---|---|---|
| Ce que vous savez | Information secrète | Mot de passe, code PIN |
| Ce que vous possédez | Objet physique | Clé USB, smartphone (OTP) |
| Ce que vous êtes | Caractéristique biométrique | Empreinte digitale, reconnaissance faciale |
Dans le contexte du développement web, l'authentification repose le plus souvent sur un couple identifiant/mot de passe, parfois complété par un second facteur (voir authentification multi-facteurs). Le flux classique suit ce schéma :
Client → POST /login {email, password}
Serveur → Vérifie le hash du mot de passe
Serveur → Renvoie un token JWT ou crée une session
Client → Utilise le token pour les requêtes suivantes
Les protocoles standards comme OAuth 2.0, OpenID Connect et SAML permettent de déléguer l'authentification à un fournisseur d'identité tiers, réduisant ainsi la surface d'attaque.
À retenir
L'authentification repose sur des identifiants robustes. Un mot de passe faible rend tout le mécanisme vulnérable, quel que soit le protocole utilisé. Utilisez un générateur de mot de passe pour créer des credentials sécurisés et résistants aux attaques par dictionnaire.
Termes connexes : autorisation, IAM, session, token JWT.
