Die Herausforderung ist folgende: Man nehme eine Seite, welche per http-Authentication geschützt ist und diese Seite hat ein JQuery oder Javascript, welches mittels eines AJAX-Requests Daten aus einem weiteren Service holt, welcher Ebefalls der gleichen Authentifizierung unterliegt.
Beim Aufruf der Seite wird der Benutzer davon überzeugt, dass seine Zugangsdaten erforderlich sind:
Das ist auch gut so, ABER sobald das weitere Daten mittels AJAX abgefragt werden, werden die Zugangsdaten erneut abgefragt – und zwar für den Service-Aufruf. Der Grund: der aktuell gültige Authentifizierungstoken im HTTP-Header wird nicht mitgegeben!
Hierzu ist es notwendig, dass beim Aufruf zusätzlich Username und Passwort mitgegeben werden:
Dann funktionierts auch mittels AJAX.
Doch….
- Doch woher Username und Passwort nehmen, wenn diese lediglich der Benutzer besitzt?
- Eine Alternative wäre das direkte Setzen des aktuellen Authentication Tokens:
doch auch hier beißt sich die Katze in den Schwanz, denn woher diesen nehmen?
Aus Security-Sicht ergibt es Sinn, dass dies nicht möglich ist, aus Usersicht jedoch ist diese Situation die sich daraus ergibt jedoch untragbar. Lösung: Keine :( – Das heißt: wir benötigen Cookie Based Authentication