400 Stimmen

Was ist der "Realm" bei der Basisauthentifizierung?

Ich bin die Einrichtung der grundlegenden Authentifizierung auf einer PHP-Website und fand cette Seite des php-Handbuchs, auf der die Einrichtung beschrieben wird. Was bedeutet "realm" hier in der Kopfzeile?

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

Ist es die angeforderte Seite?

350voto

Tim Cooper Punkte 150521

Aus RFC 1945 (HTTP/1.0) et RFC 2617 (HTTP-Authentifizierung, die von HTTP/1.1 referenziert wird)

Das Attribut realm (Groß-/Kleinschreibung wird nicht berücksichtigt) ist für alle Authentifizierungsverfahren erforderlich, die eine Challenge ausgeben. Der Realm-Wert (Groß- und Kleinschreibung wird beachtet), in Kombination mit der kanonischen Root-URL des Servers, auf den zugegriffen wird, definiert den Schutzbereich. Diese Realms ermöglichen die Aufteilung der geschützten Ressourcen auf einem Server in eine Reihe von von Schutzbereichen unterteilt werden, von denen jeder sein eigenes Authentifizierungsschema und/oder Autorisierungsdatenbank. Der Realm-Wert ist eine Zeichenkette, die im Allgemeinen die in der Regel vom Ursprungsserver zugewiesen wird und zusätzliche semantische Eigenschaften haben kann die für das Authentifizierungsschema spezifisch sind.

Kurz gesagt, Seiten im selben Bereich sollten die Anmeldeinformationen gemeinsam nutzen. Wenn Ihre Anmeldeinformationen für eine Seite mit dem Realm "Mein Reich" sollte davon ausgegangen werden, dass dieselbe Kombination aus Benutzername und Kennwort auch für eine andere Seite mit demselben Realm funktioniert.

135voto

Ja͢ck Punkte 165747

Ein Realm ist ein Bereich (keine bestimmte Seite, sondern eine Gruppe von Seiten), für den die Anmeldedaten verwendet werden; dies ist auch die Zeichenfolge, die angezeigt wird, wenn der Browser das Anmeldefenster öffnet, z. B.

Bitte geben Sie Ihren Benutzernamen und Ihr Passwort für <realm name> :

Wenn sich der Realm ändert, zeigt der Browser möglicherweise ein weiteres Popup-Fenster an, wenn er keine Anmeldeinformationen für diesen bestimmten Realm hat.

27voto

cassiomolin Punkte 112858

Nach Angaben der RFC 7235 , le realm Parameter ist reserviert für die Definition von Schutzräume (eine Reihe von Seiten oder Ressourcen, für die Anmeldedaten erforderlich sind) und wird von den Authentifizierungssystemen verwendet, um eine Umfang des Schutzes .

Weitere Einzelheiten finden Sie in dem nachstehenden Zitat (die wichtigsten Punkte sind nicht im RFC enthalten):

2.2. Schutzraum (Realm)

Der Authentifizierungsparameter "realm" ist reserviert für Nutzung durch Authentifizierungssystemen, die einen Schutzbereich angeben wollen .

Ein Schutzraum wird durch den kanonischen Root-URI definiert (das Schema und Autoritätskomponenten des effektiven Anfrage-URIs) des Servers, auf den zugegriffen wird, in Kombination mit dem Realm-Wert, falls vorhanden. Diese Bereiche ermöglichen den geschützten Ressourcen auf einem Server in eine Reihe von Schutzbereichen unterteilt werden Schutzbereiche aufgeteilt werden, jeder mit seinem eigenen Authentifizierungsschema und/oder seiner Datenbank. Der Realm-Wert ist eine Zeichenkette, die im Allgemeinen von der Ursprungsserver zugewiesen wird, der zusätzliche semantische Eigenschaften haben kann, die für den Authentifizierungsschema haben kann. Beachten Sie, dass eine Antwort mehrere Herausforderungen mit demselben Auth-Schema, aber mit unterschiedlichen Realms enthalten kann. [...]


<strong>Anmerkung 1: </strong>Der Rahmen für die HTTP-Authentifizierung wird derzeit durch die <a href="https://datatracker.ietf.org/doc/html/rfc7235" rel="nofollow noreferrer">RFC 7235 </a>, die die <a href="https://datatracker.ietf.org/doc/html/rfc2617" rel="nofollow noreferrer">RFC 2617 </a>und macht die <a href="https://datatracker.ietf.org/doc/html/rfc2616" rel="nofollow noreferrer">RFC 2616 </a>veraltet.

<strong>Anmerkung 2: </strong>Die <code>realm</code> ist nicht mehr immer erforderlich bei <a href="https://datatracker.ietf.org/doc/html/rfc7235#section-4.1" rel="nofollow noreferrer">Herausforderungen </a>.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X