Sobes.tech
Junior

Qu'est-ce que l'authentification de base?

sobes.tech IA

Réponse de l'IA

L'authentification de base est une méthode d'authentification HTTP dans laquelle le client envoie son nom d'utilisateur et son mot de passe encodés dans l'en-tête de la requête HTTP.

Mécanisme de fonctionnement:

  1. Le client envoie une requête à une ressource protégée sans crédentials.
  2. Le serveur répond avec un code d'état 401 Unauthorized et un en-tête WWW-Authenticate: Basic realm="[realm]", où [realm] est la description de la zone d'accès.
  3. En recevant la réponse 401 et l'en-tête WWW-Authenticate, le client demande à l'utilisateur de saisir son login et mot de passe.
  4. Le client encode les crédentials en base64 : base64(login:password).
  5. Le client renvoie la requête au serveur avec l'en-tête Authorization: Basic <crédentials_encodés>.
  6. Le serveur décode les crédentials, les vérifie et, en cas de succès, donne accès à la ressource.

Format de l'en-tête Authorization:

Authorization: Basic <base64(login:password)>

Exemple:

Authorization: Basic c29tZXVzZXI6c29tZXBhc3N3b3Jk

c29tZXVzZXI6c29tZXBhc3N3b3Jk est la codification base64 de la chaîne someuser:somepassword.

Caractéristiques:

  • Facile à mettre en œuvre: Facile à configurer aussi bien côté client que côté serveur.
  • Insécurisé: Les crédentials sont transmises dans un format facile à décoder (base64 est une encodage, pas un chiffrement). Il est fortement déconseillé de l'utiliser sans HTTPS/SSL/TLS pour protéger le canal de communication.
  • Transmission à chaque requête: Les crédentials sont envoyés avec chaque requête au resource protégée.

L'authentification de base est souvent utilisée en combinaison avec HTTPS pour assurer la confidentialité des crédentials transmises.