HTTPQUERY
Français

Proxy-Authenticate

Utilisation

Lorsqu’un client envoie une requête à travers un serveur proxy exigeant des identifiants, le proxy répond avec un code de statut 407 et inclut l’en-tête Proxy-Authenticate. Cet en-tête indique au client quel schéma d’authentification utiliser et fournit les paramètres nécessaires à la construction des identifiants.

Après réception du défi, le client resoumet la requête avec un en-tête Proxy-Authorization contenant les identifiants appropriés. Le proxy valide les identifiants et, en cas de succès, transmet la requête au serveur de destination.

L’en-tête Proxy-Authenticate opère au niveau du proxy. L’en-tête équivalent pour l’authentification auprès du serveur d’origine est WWW-Authenticate, qui déclenche une réponse 401 au lieu d’une 407.

Plusieurs en-têtes Proxy-Authenticate dans une même réponse indiquent que le proxy accepte plus d’un schéma. Le client retient le schéma le plus robuste pris en charge par les deux parties.

scheme

La valeur scheme identifie la méthode d’authentification. Les valeurs courantes sont Basic, Digest, Bearer et Negotiate. La liste complète des schémas enregistrés est tenue à jour par l’IANA.

realm

Le paramètre realm est une chaîne facultative décrivant l’espace de protection. Les clients affichent généralement la valeur de realm dans l’invite de saisie des identifiants. Lorsqu’il est omis, le client affiche par défaut le nom d’hôte du proxy.

Paramètres propres au schéma

Chaque schéma d’authentification définit des paramètres supplémentaires. Le schéma Digest comprend nonce, qop, algorithm et opaque. Le schéma Bearer comprend scope et error. Ces paramètres apparaissent après le nom du schéma dans la valeur de l’en-tête.

Exemple

Un proxy exigeant une authentification Basic renvoie un défi assorti d’un realm descriptif. La valeur de realm indique à l’utilisateur quels identifiants sont attendus.

Proxy-Authenticate: Basic realm="Corporate Proxy"

Un proxy prenant en charge le schéma Digest inclut un nonce généré par le serveur afin de prévenir les attaques par rejeu.

Proxy-Authenticate: Digest realm="proxy@example.re", nonce="dcd98b7102dd2f0e8b11d0f600bfb0c093", qop="auth"

Un proxy proposant plusieurs schémas d’authentification en liste chacun sur une ligne distincte. Le client retient l’option prise en charge la plus robuste.

Proxy-Authenticate: Negotiate
Proxy-Authenticate: Basic realm="Internal Network"