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:shibsp:config-slo [2020/04/22 15:22] Silke Meyerde:shibsp:config-slo [2020/04/23 16:44] (aktuell) Schreiterer, Frank
Zeile 26: Zeile 26:
 **Einschränkungen:** Es ist nicht möglich, auf einem Server mehrere Anwendungen im Modus "mixedLazy" und "normal" bzw. "lazy" gemeinsam zu betreiben, da bei "mixedLazy" der sessionHook mit dem zugehörigen Weiterleitungsskript nicht verwendet werden darf (s.u.). Der gemeinsame Betrieb von Anwendungen im Modus "normal" und "lazy" stellt kein Problem dar. **Einschränkungen:** Es ist nicht möglich, auf einem Server mehrere Anwendungen im Modus "mixedLazy" und "normal" bzw. "lazy" gemeinsam zu betreiben, da bei "mixedLazy" der sessionHook mit dem zugehörigen Weiterleitungsskript nicht verwendet werden darf (s.u.). Der gemeinsame Betrieb von Anwendungen im Modus "normal" und "lazy" stellt kein Problem dar.
  
-===== Session-Initialisierung normal und lazy =====+==== Session-Initialisierung normal und lazy ====
  
 Da es nahezu unmöglich ist, alle Bedingungen im Apache-Webserver selbst abzubilden, wird hier auf eine externe Lösung zurückgegriffen: Am Apache-Webserver wird eine RewriteMap konfiguriert, die ein externes Programm aufruft. Da es nahezu unmöglich ist, alle Bedingungen im Apache-Webserver selbst abzubilden, wird hier auf eine externe Lösung zurückgegriffen: Am Apache-Webserver wird eine RewriteMap konfiguriert, die ein externes Programm aufruft.
Zeile 43: Zeile 43:
     - zusätzlich eine weitere Anwendungssession und / oder ein Shibboleth-Cookie einzuschleusen     - zusätzlich eine weitere Anwendungssession und / oder ein Shibboleth-Cookie einzuschleusen
     - die Shibboleth-Session während der Sitzung zu verändern     - die Shibboleth-Session während der Sitzung zu verändern
-  - doLogin – nur bei Anwendungsszenario „lazy“ \\ Am Webserver muss mit einer RewriteRule auf das Login umgeleitet werden, sonst ist das Einschleusen einer vorhanden Anwendungs-Session möglich! Beim Login muss die Anwendungs-Session erzeugt werden! [[de:shibslohttpd:functioning#sonderzustaende|Siehe auch Wirkungsweise Prüfskript – Sonderzustände Punkt 1]] +  - doLogin – nur bei Anwendungsszenario „lazy“ \\ Am Webserver muss mit einer RewriteRule auf das Login umgeleitet werden, sonst ist das Einschleusen einer vorhanden Anwendungs-Session möglich! Beim Login muss die Anwendungs-Session erzeugt werden! Siehe weiter unten bei [[de:shibsp:config-slo#das_pruefskript|Prüfskript]] Sonderzustände Punkt 1 
-  - doAppSession \\ Am Webserver muss mit einer RewriteRule die Initialisierung der Anwendungs-Session sicher gestellt werden. Da beim Login noch keine Anwendungs-Session vorhanden sein darf ist es möglich, dass unmittelbar nach dem erfolgreichen Shibboleth-Login noch keine Anwendungs-Session für die RewriteRule existiert, aber das Cookie schon existiert und somit verändert werden könnte, [[de:shibslohttpd:functioning#sonderzustaende|siehe auch Wirkungsweise Prüfskript – Sonderzustände Punkt 2]]+  - doAppSession \\ Am Webserver muss mit einer RewriteRule die Initialisierung der Anwendungs-Session sicher gestellt werden. Da beim Login noch keine Anwendungs-Session vorhanden sein darf ist es möglich, dass unmittelbar nach dem erfolgreichen Shibboleth-Login noch keine Anwendungs-Session für die RewriteRule existiert, aber das Cookie schon existiert und somit verändert werden könnte, Siehe weiter unten bei [[de:shibsp:config-slo#das_pruefskript|Prüfskript]] Sonderzustände Punkt 2
   - good \\ wenn keine Aktion notwendig ist.   - good \\ wenn keine Aktion notwendig ist.
  
 Mit Hilfe der RewriteMap wird das Prüfskript bei jeder Anfrage an den Webserver ausgeführt. Beim Login beträgt die dadurch zusätzlich verursachte Ausführungszeit bis zu 20 Millisekunden, danach benötigen die Prüfungen i.d.R. unter 0,5 Millisekunden. Mit Hilfe der RewriteMap wird das Prüfskript bei jeder Anfrage an den Webserver ausgeführt. Beim Login beträgt die dadurch zusätzlich verursachte Ausführungszeit bis zu 20 Millisekunden, danach benötigen die Prüfungen i.d.R. unter 0,5 Millisekunden.
  
-===== Session-Initialisierung mixedLazy =====+==== Session-Initialisierung mixedLazy ====
  
 Im Session-Initialisierungsmodus "mixedLazy" sind neben Shibboleth weitere Authentifizierungsmethoden möglich. Bei einer Authentifizierung, die nicht gegen Shibboleth erfolgt, muss man sich auf die Schutzmechanismen der Anwendung verlassen. Im Session-Initialisierungsmodus "mixedLazy" sind neben Shibboleth weitere Authentifizierungsmethoden möglich. Bei einer Authentifizierung, die nicht gegen Shibboleth erfolgt, muss man sich auf die Schutzmechanismen der Anwendung verlassen.
Zeile 85: Zeile 85:
     - Empfohlen: Es ist möglich, die Session mittels einer Umleitung auf ein zusätzliches Skript zu erzeugen (funktioniert bei PHP).     - Empfohlen: Es ist möglich, die Session mittels einer Umleitung auf ein zusätzliches Skript zu erzeugen (funktioniert bei PHP).
     - Alternativ: Am Apache-Webserver kann dem Request ein Refresh-Header hinzugefügt werden, der einmalig für den Reload der Seite sorgt.     - Alternativ: Am Apache-Webserver kann dem Request ein Refresh-Header hinzugefügt werden, der einmalig für den Reload der Seite sorgt.
- 
-FIXME php7 
  
 <callout color="#ff9900" title="Voraussetzungen"> <callout color="#ff9900" title="Voraussetzungen">
-  * php -> Versionen? +  * php -> getestet mit php5, php7(.2) 
-  * memcached auf localhost (oder ggf. in Skripten anpassen)\\  +  * memcached auf localhost (oder ggf. in Skripten anpassen) 
-  * php5-memcache nicht php5-memcached!!!\\  +  * php-memcache (nicht php-memcached!!!) 
-  * shibd Version >= 2.5\\  +  * shibd Version >= 2.5 
-  * Apache-Webserver Version, empfohlen 2.4 \\ mit mod_rewrite und mod_headers aktiviert+  * Apache-Webserver mit mod_rewrite und mod_headers
 </callout> </callout>
  
Zeile 534: Zeile 532:
  
  
-====== Konfiguration ======+===== Konfiguration =====
  
 +FIXME
 Je nach [[de:shibslohttpd:introduction#anwendungsszenarien|Anwendungsszenario]] sind unterschiedliche Konfigurationen notwendig. Je nach [[de:shibslohttpd:introduction#anwendungsszenarien|Anwendungsszenario]] sind unterschiedliche Konfigurationen notwendig.
 Für alle Anwendungsszenarien muss die [[de:shibslohttpd:configuration:all|allgemeine Konfiguration]] durchgeführt werden. Für alle Anwendungsszenarien muss die [[de:shibslohttpd:configuration:all|allgemeine Konfiguration]] durchgeführt werden.
Zeile 545: Zeile 544:
 FIXME Alle hier aufgeführten Skripte sind beispielhaft und müssen ggf. angepasst werden. FIXME Alle hier aufgeführten Skripte sind beispielhaft und müssen ggf. angepasst werden.
  
-==== checker.php ====+checker.php
  
 Sorgt für den notwendigen zusätzlichen Request beim SessionHook. Sorgt für den notwendigen zusätzlichen Request beim SessionHook.
Zeile 555: Zeile 554:
 </file> </file>
  
-==== initsess.php ====+initsess.php => Erzeugt eine appsession 
 <file php initsess.php> <file php initsess.php>
 <?php <?php
Zeile 569: Zeile 569:
  
  
-==== remsess.php ====+remsess.php => entfernt bei Zugriff mit einer ungültigen Kombination shibsession appsession beides sessions
  
 <file php remsess.php> <file php remsess.php>
  • Zuletzt geändert: vor 4 Jahren