HTTP/Authentifizierung: Unterschied zwischen den Versionen
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
- 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.