Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.
Wir leben TYPO3      Single-Sign-On with TYPO3 –      Die Extension „shibboleth“Wir leben TYPO3                         in...
AgendaWir leben TYPO3            in2code.de
Agenda• Single-Sign-On mit Shibboleth• Die Extension „shibboleth“• Live-Demo• Weitere EntwicklungWir leben TYPO3          ...
Single-Sign-On mit ShibbolethWir leben TYPO3              in2code.de
Komponenten          TYPO3                                     Shibboleth IdP        (FE or BE)          (Discovery Servic...
Wir leben TYPO3   in2code.de
Umgebungsvariablen• REMOTE_USER wird nicht  notwendigerweise benutzt!Wir leben TYPO3                 in2code.de
Die Extension „shibboleth“Wir leben TYPO3                in2code.de
Installation• Extension installieren• .htaccess anpassen:        AuthType shibboleth       # ShibRequireSession On       r...
Konfiguration• Im Extension  Manager• Konfigurations-  datei für das  „Mapping“Wir leben TYPO3                   in2code.de
Allg. Konfigurationsparameter• Wie wird der native SP aufgerufen:  entityID, handlerURL, Session Initiator,  „force SSL“• ...
FE-Konfigurationsparameter• Benutzer-Autoimport (ja/nein)• Page ID für Autoimport• Optional: Application-ID (Shibboleth)Wi...
BE-Konfigurationsparameter• Benutzer-Autoimport (ja/nein)• Benutzer deaktiviert importieren (ja/nein)• Shibboleth-Link im ...
Backend-Login-Formular                  Keine Core-Änderung!                  (Javascript über Hook)Wir leben TYPO3       ...
Struktur der Mapping-Konfig.• TypoScript-Syntax:  tx_shibboleth {       FE {                    Zuordnung der User-ID     ...
Zuordnung der User-ID                                                 Beispiel Umgebungsvariablen  BE {         IDMapping ...
Selektion erlaubter Benutzer  BE {         …                             Jeder erkannte Benutzer wird         userControls...
Benutzer-Metadaten  BE {         …         userControls {                                                   Metadaten komm...
Live-DemoWir leben TYPO3               in2code.de
Die Situation• Es werden >200 TYPO3-Instanzen betreut• Die „Instanz-Eigentümer“ haben keine  Admin-Rechte• Die Instanz-Eig...
Extension groupdelegation• Spezielle BE-Benutzer erhalten das Recht,  die Gruppenzuordung anderer Benutzer  zu editieren• ...
Live-Demo-Szenario• Neuer Benutzer soll Backend-Zugriff  bekommen   1. Anmeldeversuch über Shibboleth       Benutzer wird...
Weitere EntwicklungWir leben TYPO3                    in2code.de
Weitere Entwicklung• Dokumentation und Veröffentlichung• Embedded Discovery Service?• Single-Logout   – Caveats: Benutzer-...
Vielen DankLinks und Kontakt:http://forge.typo3.org/projects/show/extension-shibbolethhttp://de.slideshare.net/tschikarski...
Nächste SlideShare
Wird geladen in …5
×

Shibboleth Single-Sign-On mit TYPO3

2.577 Aufrufe

Veröffentlicht am

Vorstellung der TYPO3-Extension "shibboleth", welche Single-Sign-On (SSO) für das Backend und das Frontend über Shibboleth ermöglicht.

Veröffentlicht in: Technologie
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Shibboleth Single-Sign-On mit TYPO3

  1. 1. Wir leben TYPO3 Single-Sign-On with TYPO3 – Die Extension „shibboleth“Wir leben TYPO3 in2code.de
  2. 2. AgendaWir leben TYPO3 in2code.de
  3. 3. Agenda• Single-Sign-On mit Shibboleth• Die Extension „shibboleth“• Live-Demo• Weitere EntwicklungWir leben TYPO3 in2code.de
  4. 4. Single-Sign-On mit ShibbolethWir leben TYPO3 in2code.de
  5. 5. Komponenten TYPO3 Shibboleth IdP (FE or BE) (Discovery Service) Shibboleth IdP (Identity Provider) Shibboleth IdP (Identity Provider) (Identity Provider) EXT:shibboleth TYPO3 auth services mod_shibb Apache httpd OS with shibd Authentifizierungs- Webserver (Service Server Provider)• Es wird der „native Service Provider“ verwendetWir leben TYPO3 in2code.de
  6. 6. Wir leben TYPO3 in2code.de
  7. 7. Umgebungsvariablen• REMOTE_USER wird nicht notwendigerweise benutzt!Wir leben TYPO3 in2code.de
  8. 8. Die Extension „shibboleth“Wir leben TYPO3 in2code.de
  9. 9. Installation• Extension installieren• .htaccess anpassen: AuthType shibboleth # ShibRequireSession On require shibbolethPassiver („lazy“) ModusWir leben TYPO3 in2code.de
  10. 10. Konfiguration• Im Extension Manager• Konfigurations- datei für das „Mapping“Wir leben TYPO3 in2code.de
  11. 11. Allg. Konfigurationsparameter• Wie wird der native SP aufgerufen: entityID, handlerURL, Session Initiator, „force SSL“• Pfad zur Konfigurationsdatei für das MappingWir leben TYPO3 in2code.de
  12. 12. FE-Konfigurationsparameter• Benutzer-Autoimport (ja/nein)• Page ID für Autoimport• Optional: Application-ID (Shibboleth)Wir leben TYPO3 in2code.de
  13. 13. BE-Konfigurationsparameter• Benutzer-Autoimport (ja/nein)• Benutzer deaktiviert importieren (ja/nein)• Shibboleth-Link im Login-Formular aktivieren• Optional: Application-ID (Shibboleth)Wir leben TYPO3 in2code.de
  14. 14. Backend-Login-Formular Keine Core-Änderung! (Javascript über Hook)Wir leben TYPO3 in2code.de
  15. 15. Struktur der Mapping-Konfig.• TypoScript-Syntax: tx_shibboleth { FE { Zuordnung der User-ID IDMapping { … } Autorisierung userControls { allowUser … Metadaten-Übernahme createUserFieldsMapping … updateUserFieldsMapping … } Metadaten-Updates } BE …Wir leben TYPO3 in2code.de
  16. 16. Zuordnung der User-ID Beispiel Umgebungsvariablen BE { IDMapping { Bezug auf Umgebungsvariable (von shibd) shibID = TEXT shibID.field = uid typo3Field = username } Feldname in TYPO3 (meist: username) … }Wir leben TYPO3 in2code.de
  17. 17. Selektion erlaubter Benutzer BE { … Jeder erkannte Benutzer wird userControls { zugelassen (Autorisierung) allowUser = TEXT allowUser.value = 1 … }• Flexibilität durch Nutzung des TypoScript- Parsers: Fast beliebige Bedingungen für die Autorisierung können definiert werdenWir leben TYPO3 in2code.de
  18. 18. Benutzer-Metadaten BE { … userControls { Metadaten kommen vom … IdP createUserFieldsMapping { realName = COA realName.1 = TEXT realName.1.field = sn realName.3 = TEXT realName.3.field = givenName realName.3.noTrimWrap = |, || } … } }Wir leben TYPO3 in2code.de
  19. 19. Live-DemoWir leben TYPO3 in2code.de
  20. 20. Die Situation• Es werden >200 TYPO3-Instanzen betreut• Die „Instanz-Eigentümer“ haben keine Admin-Rechte• Die Instanz-Eigentümer pflegen auch die Redakteure• Die Backend-Anmeldung erfolgt über ShibbolethWir leben TYPO3 in2code.de
  21. 21. Extension groupdelegation• Spezielle BE-Benutzer erhalten das Recht, die Gruppenzuordung anderer Benutzer zu editieren• Beschränkt auf die eigenen Gruppen• Auch die Freischaltung/Sperrung der Benutzer wird erlaubtWir leben TYPO3 in2code.de
  22. 22. Live-Demo-Szenario• Neuer Benutzer soll Backend-Zugriff bekommen 1. Anmeldeversuch über Shibboleth  Benutzer wird angelegt, aber gesperrt 2. Admin oder „Sub-Admin“ schaltet frei 3. Erfolgreiche Anmeldung über Shibboleth NICHT klicken! Live-Demo!Wir leben TYPO3 in2code.de
  23. 23. Weitere EntwicklungWir leben TYPO3 in2code.de
  24. 24. Weitere Entwicklung• Dokumentation und Veröffentlichung• Embedded Discovery Service?• Single-Logout – Caveats: Benutzer-Erwartung und -Führung• Logout in Load-Balancing-Umgebungen – „Sticky Sessions“? – Shared Process? – Store Session on ODBC-Database?Wir leben TYPO3 in2code.de
  25. 25. Vielen DankLinks und Kontakt:http://forge.typo3.org/projects/show/extension-shibbolethhttp://de.slideshare.net/tschikarski/shibboleth-singlesignon-mit-typo3mailto:thomas.schikarski@in2code.deWir leben TYPO3 in2code.de

×