Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
de:shibslohttpd [2015/12/08 14:16]
Schreiterer, Frank
de:shibslohttpd [2015/12/09 11:59] (aktuell)
Schreiterer, Frank
Zeile 1: Zeile 1:
 ====== Kopplung der Anwendungs-Session an die Shibboleth-Session am Apache-Webserver ====== ====== Kopplung der Anwendungs-Session an die Shibboleth-Session am Apache-Webserver ======
  
-===== Ausgangssituation ===== +Das beim IdP ab Version 3.2 verfügbare Single Logout (SLOterminiert lediglich die SAML-Session, jedoch bleibt die Anwendungs-Session i.d.R. weiter bestehenDieses und weitere Probleme beim Logout unter [[https://wiki.shibboleth.net/confluence/display/CONCEPT/SLOIssues]] diskutiert.
-Viele Web-Anwendungen verwenden eine eigene Anwendungs-Session , die in der Regel in einem oder mehreren Cookies gespeichert werden, und authentifizieren gegen ShibbolethDabei ist die Anwendung selbst nicht in der Lage, die Session selbst auf Veränderungen zu prüfen, z.B. mit einem Remote-User zu assoziieren und so gegen Veränderungen zu schützen. +
- +
-Besitzt die Anwendung ein Session-Management, welches robust gegen Manipulationen ist und das Session-Management Shibboleth-Variablen verwendet, so ist die geforderte Verbindung zwischen Shibboleth-Session und Anwendungs-Session gegeben und das SLO ist möglich, da die verbleibende Anwendungs-Session nach dem Logout der Shibbolet-Session nicht mehr gültig ist und somit ein erneutes Login an Shibboleth (und damit an der Anwendungangefordert werden muss.  +
-Anmerkung: Man kann sich aber durchaus überlegen, einen Grundschutz zu implementieren, der eine gesetze Anwendungs-Session ohne Shibboleth-Session verhindert (aufrufen der RewriteMap nur für sessionHook und den Rest der Prüfung nicht am Apache-Webserver umsetzt). Dies würde die Nutzer eventuell dazu anregen, sich auch von Anwendungen abzumelden an wechselnden Arbeitsplätzen. +
- +
-===== Problem ===== +
-Durch den Besitz einer (gültigen) Anwendungs-Session  ist es möglichohne eine gültige Shibboleth-Authentifizierung eine Webanwendung zu verwenden bzw. eine alte Anwendungs-Session einzuschleusen. Ist beispielsweise ein Nutzer gesperrt worden und die Shibboleth-Session am ServiceProvider wurde beendet, so besteht immer noch die Anwendungs-Session  und die Webanwendung kann weiterhin genutzt werden. +
- +
-===== Herausforderung zur Lösung ===== +
-Es muss eine Lösung gefunden werden, die es einem Anwender nicht ermöglicht,  +
-  * eine abgelaufene oder auch mutwillig veränderte Anwendungs-Session (wieder) zu verwenden, +
-  * die Shibboleth-Session zu manipulieren und weiter zu verwenden. +
- +
-Voraussetzung hierzu ist, dass +
-  * der Zusammenhang zwischen Shibboleth-Session und Anwendungs-Session hergestellt wird,  +
- +
-damit die missbräuchliche Nutzung von Anwendungs- und / oder Shibboleth-Sessions verhindern werden kann. +
- +
-===== Anwendungsszenarien ===== +
-Anwendungen können auf drei verschiedenen Arten mit Shibboleth geschützt werden: +
- +
-**normal:** +
-Die Anwendung erfordert immer eine Authentifizierung mit Shibboleth (Standardfall). +
- +
-**lazy:** +
-Die Authentifizierung gegen Shibboleth erfolgt anwendungsgesteuert nach Erfordernis. Shibboleth bleibt aber die einzige Authentifizierungsmöglichkeit. +
- +
-**mixedLazy:** +
-Die Authentifizierung erfolgt anwendungsgesteuert nach Erfordernis. Neben der Authentifizierung gegen Shibboleth kann auch gegen andere Mechanismen authentifiziert werden+
  
 +Nachfolgende Lösung zeigt eine Möglichkeit, die Anwendugs-Session direkt am Apache-Webserver an die Shibboleth-Session zu koppeln, ohne dass hierzu ein Eingriff in bestehende Software notwendig wird.
  
  
 +Weiter zu [[de:shibslohttpd:introduction|Einleitung]]
  • Zuletzt geändert: vor 6 Jahren