Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung Nächste ÜberarbeitungBeide Seiten der Revision | ||
de:shibslohttpd:configuration:lazy [2015/12/09 10:08] – [Einrichtung für SessionHook] Schreiterer, Frank | de:shibslohttpd:configuration:lazy [2015/12/09 10:37] – Schreiterer, Frank | ||
---|---|---|---|
Zeile 8: | Zeile 8: | ||
==== Schutz der Anwendung ==== | ==== Schutz der Anwendung ==== | ||
- | Konfiguration **Apache:** | + | Konfiguration **Apache |
<code Apache httpd.conf> | <code Apache httpd.conf> | ||
+ | < | ||
+ | # | ||
+ | | ||
+ | | ||
+ | < | ||
+ | Require shib-attr eppn ~ ^foo*@beispiel-uni.de$ | ||
+ | Require shib-attr eduPersonEntitlement ~ ^urn: | ||
+ | </ | ||
+ | </ | ||
+ | </ | ||
+ | Konfiguration **Apache 2.4:** Anwendung (komplett) | ||
+ | <code Apache httpd.conf> | ||
+ | < | ||
+ | #Lazy Session Shibboleth | ||
+ | authType shibboleth | ||
+ | ShibRequestSetting requireSession false | ||
+ | Require shibboleth | ||
+ | ShibUseHeaders on | ||
+ | RewriteEngine On | ||
+ | #den Wert der Anwendungssession merken um die Anwendungssession sauber zerstören zu können | ||
+ | RewriteCond %{HTTP: | ||
+ | RewriteRule .* - [E=appsid: | ||
+ | |||
+ | #prüfen, ob die Anfrage gültig ist und ggf. das Logout durchführen | ||
+ | #ACHTUNG: Erst die Anwendungssession zerstören und das das Shibboleth-Logout! | ||
+ | |||
+ | RewriteCond ${shibchecker: | ||
+ | #Um die Aufrufe zu minimieren, wird das Ergebnis in einer Umgebungsvariable gespeichert und dann können die verschiedenen Rückgabewerte wieder in einzelnen Bedingungen ausgewertet werden | ||
+ | RewriteRule .* - [E=shibcheckertype: | ||
+ | |||
+ | #Login? - das redirect muss automatisch erfolgen, da sonst ein Nutzer die Möglichkeit hätte, ein altes Cookie der Anwendung einzuschleusen und durch den sessionHook und den erneuten Aufruf von shibchecker wird sonst | ||
+ | # eine Anwendungs-Session gefunden, die dann zum Logout führt | ||
+ | RewriteCond %{ENV: | ||
+ | RewriteRule .* https:// | ||
+ | |||
+ | # | ||
+ | #bevorzugt | ||
+ | RewriteCond %{ENV: | ||
+ | über ein extra Skript, wenn ohne weiteres die Anwendungssession initialisiert werden kann | ||
+ | RewriteRule .* https:// | ||
+ | |||
+ | #oder über Refresh-Header, | ||
+ | # | ||
+ | # | ||
+ | #Header set Refresh " | ||
+ | |||
+ | #Logout? | ||
+ | RewriteCond %{ENV: | ||
+ | RewriteRule .* https:// | ||
+ | |||
+ | </ | ||
+ | |||
+ | </ | ||
+ | |||
+ | Anmerkung: | ||
+ | Führt die Anwendung selbständig das Redirect zum Shibboleth-Login und auch die Initialisierung der Anwendungssession durch, so verkürzt sich die Konfiguration, | ||
+ | |||
+ | Konfiguration **Apache 2.4:** Anwendung (reduziert) | ||
+ | |||
+ | <code Apache httpd.conf> | ||
+ | < | ||
+ | #Lazy Session Shibboleth | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | #den Wert der Anwendungssession merken um die Anwendungssession sauber zerstören zu können | ||
+ | | ||
+ | | ||
+ | # | ||
+ | # | ||
+ | | ||
+ | | ||
+ | </ | ||
</ | </ |