En-tête Proxy-Authenticate
Baseline
Widely available
Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis juillet 2015.
L'en-tête de réponse HTTP Proxy-Authenticate définit la méthode d'authentification (ou challenge) à utiliser pour accéder à une ressource derrière un serveur mandataire.
Il est envoyé dans une réponse 407 Proxy Authentication Required afin que le·la client·e puisse s'identifier auprès d'un mandataire qui requiert une authentification.
| Type d'en-tête | En-tête de réponse |
|---|
Syntaxe
Proxy-Authenticate: <challenge>, …
La valeur est une liste de challenges séparés par des virgules, où un <challenge> est composé d'un <auth-scheme>, suivi éventuellement d'un <token68> ou d'une liste séparée par des virgules de <auth-params> :
challenge = <auth-scheme> <auth-param>, …, <auth-paramN> challenge = <auth-scheme> <token68>
Par exemple :
Proxy-Authenticate: <auth-scheme>
Proxy-Authenticate: <auth-scheme> token68
Proxy-Authenticate: <auth-scheme> auth-param1=param-token1
Proxy-Authenticate: <auth-scheme> auth-param1=param-token1, …, auth-paramN=param-tokenN
La présence d'un token68 ou de paramètres d'authentification dépend du <auth-scheme> sélectionné.
Par exemple, l'authentification Basic requiert un <realm>, et permet l'utilisation optionnelle de la clé charset, mais ne prend pas en charge un token68 :
Proxy-Authenticate: Basic realm="Dev", charset="UTF-8"
Directives
<auth-scheme>-
Un jeton insensible à la casse indiquant le schéma d'authentification utilisé. Parmi les types les plus courants sont
Basic,Digest,NegotiateetAWS4-HMAC-SHA256. L'IANA maintient une liste des schémas d'authentification (angl.), mais il existe d'autres schémas proposés par les services hôtes. <auth-param>Facultatif-
Un paramètre d'authentification dont le format dépend du
<auth-scheme>.<realm>est décrit ci-dessous car c'est un paramètre courant parmi de nombreux schémas d'authentification.<realm>Facultatif-
La chaîne de caractères « domaine » (
realm) suivie de=et d'une chaîne de caractères entre guillemets décrivant une zone protégée, par exemplerealm="staging environment". Un domaine permet à un serveur de partitionner les zones qu'il protège (si le schéma le permet). Certain·e·s client·e·s affichent cette valeur à l'utilisateur·ice pour l'informer des identifiants requis — la plupart des navigateurs ont cessé de le faire pour contrer l'hameçonnage. Le seul jeu de caractères pris en charge de façon fiable pour cette valeur estus-ascii. Si aucun domaine n'est défini, les client·e·s affichent souvent un nom d'hôte formaté à la place.
<token68>Facultatif-
Un jeton qui peut être utile pour certains schémas. Le jeton autorise les 66 caractères URI non réservés plus quelques autres. Il peut contenir une base64, base64url, base32 ou base16 (hexadécimal), avec ou sans remplissage, mais sans espaces. L'alternative
token68aux listes de paramètres d'authentification est prise en charge pour la compatibilité avec les anciens schémas d'authentification.
Generally, you will need to check the relevant specifications for the authentication parameters needed for each <auth-scheme>.
Note :
See WWW-Authenticate for more details on authentication parameters.
Exemples
>Authentification Basic avec Proxy-Authenticate
La réponse suivante indique qu'un schéma d'authentification Basic est requis avec un domaine :
Proxy-Authenticate: Basic realm="Staging server"
Spécifications
| Specification |
|---|
| HTTP Semantics> # field.proxy-authenticate> |
Compatibilité des navigateurs
Voir aussi
- L'en-tête
WWW-Authenticate - Authentification HTTP
- Les en-têtes
Authorization,Proxy-Authorization - Les codes de statut
401,403,407