web-dev-qa-db-fra.com

Quel est le "royaume" de l'authentification de base

Je suis en train de mettre en place l'authentification de base sur un site php et j'ai trouvé this page sur le manuel php montrant la configuration. Que veut dire "royaume" ici dans l'en-tête?

header('WWW-Authenticate: Basic realm="My Realm"');

Est-ce la page page demandée?

282
RayLoveless

De RFC 1945 (HTTP/1.0) et RFC 2617 (authentification HTTP référencée par HTTP/1.1)

L'attribut de domaine (insensible à la casse) est requis pour tous les schémas d'authentification qui émettent un défi. La valeur de domaine (sensible à la casse), associée à l'URL racine canonique du serveur auquel l'accès est utilisé, définit l'espace de protection. Ces domaines permettent aux ressources protégées d'un serveur d'être partitionnées en un ensemble d'espaces de protection, chacun avec son propre schéma d'authentification et/ou sa base de données d'autorisation. La valeur du domaine est une chaîne, généralement attribuée par le serveur Origin, qui peut comporter une sémantique supplémentaire propre au schéma d'authentification.

En bref, les pages d'un même domaine doivent partager les informations d'identification. Si vos informations d'identification fonctionnent pour une page avec le domaine "Mon domaine" , il convient de supposer que la même combinaison de nom d'utilisateur et de mot de passe doit fonctionner pour une autre page avec le même royaume.

262
Tim Cooper

Un domaine peut être considéré comme une zone (et non une page en particulier, il pourrait s'agir d'un groupe de pages) pour lequel les informations d'identification sont utilisées; c'est également la chaîne qui sera affichée lorsque le navigateur ouvre la fenêtre de connexion, par exemple.

Veuillez entrer votre nom d'utilisateur et votre mot de passe pour <realm name>:

Lorsque le domaine change, le navigateur peut afficher une autre fenêtre contextuelle s'il ne dispose pas des informations d'identification pour ce domaine particulier.

108
Ja͢ck

Selon la RFC 7235 , le paramètre realm est réservé à la définition des espaces de protection (ensemble de pages ou de ressources pour lesquelles des informations d'identification sont requises) et il est utilisé par les schémas d'authentification pour indiquer une étendue de protection .

Pour plus de détails, voir la citation ci-dessous (les points forts ne sont pas présents dans le RFC):

2.2. Espace de protection (royaume)

Le paramètre d'authentification "realm" est réservé à utilisé par les schémas d'authentification souhaitant indiquer une étendue de protection .

Un espace de protection est défini par l'URI racine canonique (composants de schéma et d'autorité de l'URI de demande effective) du serveur auquel l'accès est utilisé, en combinaison avec la valeur de domaine, le cas échéant. Ces domaines permettent aux ressources protégées sur un serveur d'être partitionnées en un ensemble d'espaces de protection, chacun avec son propre schéma d'authentification et/ou sa base de données d'autorisation. La valeur du domaine est une chaîne, généralement attribué par le serveur d'origine, pouvant comporter une sémantique supplémentaire propre au schéma d'authentification. Notez qu'une réponse peut avoir plusieurs problèmes avec le même schéma d'authentification mais avec des royaumes différents. [...]


Remarque 1: Le cadre de l'authentification HTTP est actuellement défini par le RFC 7235 , qui met à jour le RFC 2617 et rend le RFC 2616 obsolète.

Remarque 2: Le paramètre realm n'est plus obligatoire sur challenges .

13
cassiomolin