HTTP/Authentifizierung: Unterschied zwischen den Versionen

Aus Foxwiki
K Dirkwagner verschob die Seite HTTP:Authentifizierung nach HTTP/Authentifizierung, ohne dabei eine Weiterleitung anzulegen: Textersetzung - „:“ durch „/“
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
; Stellt der Webserver fest, dass für eine angeforderte Datei Benutzername oder Passwort nötig sind
[[Datei:Http auth iw 10.png|mini|HTTP-Authentifizierung]]
: meldet er das dem Browser mit dem Statuscode ''401 Unauthorized'' und dem Header ''WWW-Authenticate''.
* Dieser prüft, ob die Angaben vorliegen, oder präsentiert dem Anwender einen Dialog, in dem Name und Passwort einzutragen sind, und überträgt diese an den Server.
* Stimmen die Daten, wird die entsprechende Seite an den Browser gesendet.
* Es wird nach RFC 2617 unterschieden in:
; Basic Authentication: Die Basic Authentication ist die häufigste Art der HTTP-Authentifizierung.
* Der Webserver fordert eine Authentifizierung an, der Browser sucht daraufhin nach Benutzername/Passwort für diese Datei und fragt gegebenenfalls den Benutzer.
* Anschließend sendet er die Authentifizierung mit dem Authorization-Header in der Form ''Benutzername:Passwort'' [[Base64]]-codiert an den Server.
* Base64 bietet keinen kryptographischen Schutz, daher kann dieses Verfahren nur beim Einsatz von [[Hypertext Transfer Protocol Secure|HTTPS]] als sicher angesehen werden.
; Digest Access Authentication: Bei der Digest Access Authentication sendet der Server zusätzlich mit dem WWW-Authenticate-Header eine eigens erzeugte zufällige Zeichenfolge ([[Nonce]]).
* Der Browser berechnet den [[Hashcode]] der gesamten Daten (Benutzername, Passwort, erhaltener Zeichenfolge, HTTP-Methode und angeforderter [[Uniform Resource Identifier|URI]]) und sendet sie im Authorization-Header zusammen mit dem Benutzernamen und der zufälligen Zeichenfolge zurück an den Server, der diese mit der selbst berechneten Prüfsumme vergleicht.
* Ein Abhören der Kommunikation nützt hier einem Angreifer nichts, da sich aufgrund der verwendeten [[Kryptologische Hashfunktion|kryptologischen Hashfunktion]] aus dem Hashcode die Daten nicht rekonstruieren lassen und für jede Anforderung anders lauten.
[[Kategorie:HTTP]]
[[Kategorie:HTTP]]

Version vom 28. April 2023, 12:26 Uhr

Stellt der Webserver fest, dass für eine angeforderte Datei Benutzername oder Passwort nötig sind
HTTP-Authentifizierung
meldet er das dem Browser mit dem Statuscode 401 Unauthorized und dem Header WWW-Authenticate.
  • Dieser prüft, ob die Angaben vorliegen, oder präsentiert dem Anwender einen Dialog, in dem Name und Passwort einzutragen sind, und überträgt diese an den Server.
  • Stimmen die Daten, wird die entsprechende Seite an den Browser gesendet.
  • Es wird nach RFC 2617 unterschieden in:
Basic Authentication
Die Basic Authentication ist die häufigste Art der HTTP-Authentifizierung.
  • Der Webserver fordert eine Authentifizierung an, der Browser sucht daraufhin nach Benutzername/Passwort für diese Datei und fragt gegebenenfalls den Benutzer.
  • Anschließend sendet er die Authentifizierung mit dem Authorization-Header in der Form Benutzername:Passwort Base64-codiert an den Server.
  • Base64 bietet keinen kryptographischen Schutz, daher kann dieses Verfahren nur beim Einsatz von HTTPS als sicher angesehen werden.
Digest Access Authentication
Bei der Digest Access Authentication sendet der Server zusätzlich mit dem WWW-Authenticate-Header eine eigens erzeugte zufällige Zeichenfolge (Nonce).
  • Der Browser berechnet den Hashcode der gesamten Daten (Benutzername, Passwort, erhaltener Zeichenfolge, HTTP-Methode und angeforderter URI) und sendet sie im Authorization-Header zusammen mit dem Benutzernamen und der zufälligen Zeichenfolge zurück an den Server, der diese mit der selbst berechneten Prüfsumme vergleicht.
  • Ein Abhören der Kommunikation nützt hier einem Angreifer nichts, da sich aufgrund der verwendeten kryptologischen Hashfunktion aus dem Hashcode die Daten nicht rekonstruieren lassen und für jede Anforderung anders lauten.