Authorization

L'en-tête de requête HTTP Authorization contient les identifiants permettant l'authentification d'un utilisateur auprès d'un serveur, habituellement après que le serveur ait répondu avec un statut 401 Unauthorized et l'en-tête WWW-Authenticate

Type d'en-tête Request header
Nom d'en-tête interdit Non

Syntaxe

Authorization: <type> <credentials>

Directives

<type>
Le type d'authentification. Le type "Basic" est souvent utilisé. Pour connaître les autres types :
<credentials>
Si c'est le type d'authentification "Basic" qui est utilisé, les identifiants sont construits de la manière suivante :
  • L'identifiat de l'utilisateur et le mot de passe sont combiné avec deux-points : (aladdin:sesameOuvreToi).
  • Cette chaine de caractère est ensuite encodée en base64 (YWxhZGRpbjpzZXNhbWVPdXZyZVRvaQ==).

Note: L'encodage en Base64 n'est pas un chiffrement ou un hachage ! Cette méthode est aussi peu sûre que d'envoyer les identifiants en clair (l'encodage base64 est un encodage réversible). Il faudra privilégier HTTPS lorsqu'on emploie une authentification "basique".

Exemples

Authorization: Basic YWxhZGRpbjpvcGVuc2VzYW1l

Voir aussi l'article authentification HTTP avec des exemples de configuration de serveurs Apache ou nginx pour protéger votre site grâce à un mot de passe et l'authentification HTTP basique.

Spécifications

Spécification Titre
RFC 7235, section 4.2: Authorization HTTP/1.1 : Authentification
RFC 7617 Schéma d'Authentification HTTP 'Basic'

Voir