Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Shibboleth Single-Sign-On mit TYPO3

2,576 views

Published on

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

Published in: Technology
  • Be the first to comment

  • Be the first to like this

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

×