![Page 1: Die Technik des Service Provider 2. Shibboleth-Workshop Freiburg, 23. März Dr. Jochen Lienhard AAR Projekt UB Freiburg Authentifizierung, Autorisierung](https://reader036.vdocuments.pub/reader036/viewer/2022062818/570491c51a28ab14218dab37/html5/thumbnails/1.jpg)
Die Technik des Service Provider
2. Shibboleth-WorkshopFreiburg, 23. März
Dr. Jochen LienhardAAR ProjektUB Freiburg
Authentifizierung, Autorisierung und Rechteverwaltung
![Page 2: Die Technik des Service Provider 2. Shibboleth-Workshop Freiburg, 23. März Dr. Jochen Lienhard AAR Projekt UB Freiburg Authentifizierung, Autorisierung](https://reader036.vdocuments.pub/reader036/viewer/2022062818/570491c51a28ab14218dab37/html5/thumbnails/2.jpg)
Dr. Jochen Lienhard, AAR Projekt, UB Freiburg 2
Was ist ein Service Provider?
• AllgemeinEin Service Provider (SP) ist ein Anbieter von webbasierten Diensten oder Inhalten, die einen eingeschränkten Zugriff benötigen.
• bei Shibboleth „A Service Provider (SP) is a deployment of SAML software that validates assertions issued by Identity Providers (IdP) and uses them to create a security context and assists in the enforcement of access control based on the information.”
![Page 3: Die Technik des Service Provider 2. Shibboleth-Workshop Freiburg, 23. März Dr. Jochen Lienhard AAR Projekt UB Freiburg Authentifizierung, Autorisierung](https://reader036.vdocuments.pub/reader036/viewer/2022062818/570491c51a28ab14218dab37/html5/thumbnails/3.jpg)
Dr. Jochen Lienhard, AAR Projekt, UB Freiburg 3
Beispiele für Ressourcen
• HTML-Seiten, PHP- oder CGI-Scripte• e-Learning-Module in LMS• Datenbanken• Elektronische Zeitschriften• Zertifizierungsstelle• ...
![Page 4: Die Technik des Service Provider 2. Shibboleth-Workshop Freiburg, 23. März Dr. Jochen Lienhard AAR Projekt UB Freiburg Authentifizierung, Autorisierung](https://reader036.vdocuments.pub/reader036/viewer/2022062818/570491c51a28ab14218dab37/html5/thumbnails/4.jpg)
Dr. Jochen Lienhard, AAR Projekt, UB Freiburg 4
Ohne Shibboleth
Web-Server
Apache oder IIS
httpd.conf
<Location>
Require ....
</Location>
Daten im FilesystemRessource
Manager
![Page 5: Die Technik des Service Provider 2. Shibboleth-Workshop Freiburg, 23. März Dr. Jochen Lienhard AAR Projekt UB Freiburg Authentifizierung, Autorisierung](https://reader036.vdocuments.pub/reader036/viewer/2022062818/570491c51a28ab14218dab37/html5/thumbnails/5.jpg)
Dr. Jochen Lienhard, AAR Projekt, UB Freiburg 5
Mit Shibboleth
Web-ServerApache oder IIS
httpd.conf
<Location> AuthType shibboleth ShibRequireSession On
</Location>
Daten im FilesystemRessource
Manager
mod_shib (ACS) shibd
(+ AAP)
![Page 6: Die Technik des Service Provider 2. Shibboleth-Workshop Freiburg, 23. März Dr. Jochen Lienhard AAR Projekt UB Freiburg Authentifizierung, Autorisierung](https://reader036.vdocuments.pub/reader036/viewer/2022062818/570491c51a28ab14218dab37/html5/thumbnails/6.jpg)
Dr. Jochen Lienhard, AAR Projekt, UB Freiburg 6
Der Ressource Manager
• RM des Apache– require affiliation [email protected]
• RM als Mischung aus Apache und zusätzlicher Software– require valid_user + ....
• RM nur mit zusätzlicher Software– lazy session
![Page 7: Die Technik des Service Provider 2. Shibboleth-Workshop Freiburg, 23. März Dr. Jochen Lienhard AAR Projekt UB Freiburg Authentifizierung, Autorisierung](https://reader036.vdocuments.pub/reader036/viewer/2022062818/570491c51a28ab14218dab37/html5/thumbnails/7.jpg)
Dr. Jochen Lienhard, AAR Projekt, UB Freiburg 7
Aufgaben des Service Providers
• Schutz der Ressourcen• Kontaktaufnahme zum Identity Provider
(via WAYF)• Überprüfung der Zertifikate• Überprüfung der Attribute• Freigabe der Ressource
![Page 8: Die Technik des Service Provider 2. Shibboleth-Workshop Freiburg, 23. März Dr. Jochen Lienhard AAR Projekt UB Freiburg Authentifizierung, Autorisierung](https://reader036.vdocuments.pub/reader036/viewer/2022062818/570491c51a28ab14218dab37/html5/thumbnails/8.jpg)
Dr. Jochen Lienhard, AAR Projekt, UB Freiburg 8
Die Shibboleth Komponenten
• mod_shib (Assertion Consumer Service)Apache Modul, das in die httpd.conf eingebunden werden muss.
• shibdShibboleth Dämon
• AAPAttribute Acceptance Policies
![Page 9: Die Technik des Service Provider 2. Shibboleth-Workshop Freiburg, 23. März Dr. Jochen Lienhard AAR Projekt UB Freiburg Authentifizierung, Autorisierung](https://reader036.vdocuments.pub/reader036/viewer/2022062818/570491c51a28ab14218dab37/html5/thumbnails/9.jpg)
Dr. Jochen Lienhard, AAR Projekt, UB Freiburg 9
Funktionsweise
1. Zugriff auf Ressource→ Redirect zum WAYF oder IdP durch ACS
2. Authentifizierungsbestätigung des IdPs→ Weiterleitung der SAML vom Apache-Modul
(ACS) zum Shibboleth-Dämon (shibd)→ Anfrage vom Dämon an den AA bzgl Attribute
3. Attribute des AAs→ Verifizierung der Attribute (AAP.xml)→ Freigabe oder Sperrung der Ressource durch RM
![Page 10: Die Technik des Service Provider 2. Shibboleth-Workshop Freiburg, 23. März Dr. Jochen Lienhard AAR Projekt UB Freiburg Authentifizierung, Autorisierung](https://reader036.vdocuments.pub/reader036/viewer/2022062818/570491c51a28ab14218dab37/html5/thumbnails/10.jpg)
Dr. Jochen Lienhard, AAR Projekt, UB Freiburg 10
Systemvoraussetzungen
• Betriebssystem– Linux, Solaris, Windows, MAC
• Webserver– Apache oder IIS
• Sicherheit– OpenSSL
• OpenSource• Quellcode: C++
![Page 11: Die Technik des Service Provider 2. Shibboleth-Workshop Freiburg, 23. März Dr. Jochen Lienhard AAR Projekt UB Freiburg Authentifizierung, Autorisierung](https://reader036.vdocuments.pub/reader036/viewer/2022062818/570491c51a28ab14218dab37/html5/thumbnails/11.jpg)
Dr. Jochen Lienhard, AAR Projekt, UB Freiburg 11
Zusätzliche Komponenten
Die zusätzlichen Komponenten sind bei Internet2 oder Apache verfügbar:– log4cpp – xerces-c – xml-security-c – opensaml
![Page 12: Die Technik des Service Provider 2. Shibboleth-Workshop Freiburg, 23. März Dr. Jochen Lienhard AAR Projekt UB Freiburg Authentifizierung, Autorisierung](https://reader036.vdocuments.pub/reader036/viewer/2022062818/570491c51a28ab14218dab37/html5/thumbnails/12.jpg)
Dr. Jochen Lienhard, AAR Projekt, UB Freiburg 12
Konfigurationsdateien
• apache.config bzw. apache2.configKonfigurationsdatei für das mod_shib
• shibboleth.xmlZentrale XML-Konfigurationsdatei
• AAP.xmlXML Datei zur Konfiguration der Attribute Acceptance Policies
![Page 13: Die Technik des Service Provider 2. Shibboleth-Workshop Freiburg, 23. März Dr. Jochen Lienhard AAR Projekt UB Freiburg Authentifizierung, Autorisierung](https://reader036.vdocuments.pub/reader036/viewer/2022062818/570491c51a28ab14218dab37/html5/thumbnails/13.jpg)
Dr. Jochen Lienhard, AAR Projekt, UB Freiburg 13
Was muss man konfigurieren?
• Basiskonfiguration (apache.config + shibboleth.xml)
• Attributes (AAP.xml)• Schutz der Ressoucre
(apache.config + shibboleth.xml + RM)
• Zertifikate (shibboleth.xml)• Föderation und Metadaten (shibboleth.xml)• Logger und Fehlerseiten (shibboleth.xml)
![Page 14: Die Technik des Service Provider 2. Shibboleth-Workshop Freiburg, 23. März Dr. Jochen Lienhard AAR Projekt UB Freiburg Authentifizierung, Autorisierung](https://reader036.vdocuments.pub/reader036/viewer/2022062818/570491c51a28ab14218dab37/html5/thumbnails/14.jpg)
Dr. Jochen Lienhard, AAR Projekt, UB Freiburg 14
Basiskonfiguration
• shibboleth.xml editieren– Service Provider ID eintragen– WAYF oder IdP angeben– Metadaten und Audience anpassen– Zertifikate einbinden (Client Zertifikat)
• apache-Konfiguration einbinden.
Anschließend ein Test gegenüber eines existierenden IdP.
![Page 15: Die Technik des Service Provider 2. Shibboleth-Workshop Freiburg, 23. März Dr. Jochen Lienhard AAR Projekt UB Freiburg Authentifizierung, Autorisierung](https://reader036.vdocuments.pub/reader036/viewer/2022062818/570491c51a28ab14218dab37/html5/thumbnails/15.jpg)
Dr. Jochen Lienhard, AAR Projekt, UB Freiburg 15
Attribute (AAP.xml)
• „Default-Attribute“: Identity Provider• Empfangene Attribute müssen abgebildet und
gefiltert werden<AttributeRule
Name=“urn:mace:dir:attribute-def:eduPersonAffiliation“
Header=“Shib-EP-Affiliation“ Alias=“affiliation“><AnySite><AnyValue>
</AnySite>
</AttributeRule>
![Page 16: Die Technik des Service Provider 2. Shibboleth-Workshop Freiburg, 23. März Dr. Jochen Lienhard AAR Projekt UB Freiburg Authentifizierung, Autorisierung](https://reader036.vdocuments.pub/reader036/viewer/2022062818/570491c51a28ab14218dab37/html5/thumbnails/16.jpg)
Dr. Jochen Lienhard, AAR Projekt, UB Freiburg 16
Schutz der Ressourcen (am Beispiel von Apache)
• Konfiguration des Apache<Location /interna>
AuthType shibbolethShibRequireSession OnRequire EduPersonEntitlement urn:mace:aar:entitlement:ezb:unirb:admin
</Location>• Ressource Manager• Rechteserver
![Page 17: Die Technik des Service Provider 2. Shibboleth-Workshop Freiburg, 23. März Dr. Jochen Lienhard AAR Projekt UB Freiburg Authentifizierung, Autorisierung](https://reader036.vdocuments.pub/reader036/viewer/2022062818/570491c51a28ab14218dab37/html5/thumbnails/17.jpg)
Dr. Jochen Lienhard, AAR Projekt, UB Freiburg 17
Zertifikate
• Schlüssel und Zertifikat notwendig• Client-Zertifikat für Requester-Match bei der
ARP des IdP.• Root-CA muss in der metadata.xml enthalten
sein.
![Page 18: Die Technik des Service Provider 2. Shibboleth-Workshop Freiburg, 23. März Dr. Jochen Lienhard AAR Projekt UB Freiburg Authentifizierung, Autorisierung](https://reader036.vdocuments.pub/reader036/viewer/2022062818/570491c51a28ab14218dab37/html5/thumbnails/18.jpg)
Dr. Jochen Lienhard, AAR Projekt, UB Freiburg 18
Föderation und Metadaten
• Föderation – als Basis des Vertrauens– als Lieferant der Metadaten– als Rahmen
• Metadaten– notwendig zur Überprüfung der IdPs– Informationen über IdP– Informationen über Zertifikate
![Page 19: Die Technik des Service Provider 2. Shibboleth-Workshop Freiburg, 23. März Dr. Jochen Lienhard AAR Projekt UB Freiburg Authentifizierung, Autorisierung](https://reader036.vdocuments.pub/reader036/viewer/2022062818/570491c51a28ab14218dab37/html5/thumbnails/19.jpg)
Dr. Jochen Lienhard, AAR Projekt, UB Freiburg 19
Session Initiator
• default Initiator sollte der WAYF sein• ermöglicht es URLs zu generieren, die einen
Initiator enthalten, so dass der Nutzer direkt zum richtigen IdP geleitet wird ohne über den WAYF zu gehen.
![Page 20: Die Technik des Service Provider 2. Shibboleth-Workshop Freiburg, 23. März Dr. Jochen Lienhard AAR Projekt UB Freiburg Authentifizierung, Autorisierung](https://reader036.vdocuments.pub/reader036/viewer/2022062818/570491c51a28ab14218dab37/html5/thumbnails/20.jpg)
Dr. Jochen Lienhard, AAR Projekt, UB Freiburg 20
Logger und Fehlerseiten
• verschiedene Log-Level einstellbar– DEBUG, INFO, WARN, ERROR, OFF
• Fehlerseiten können selbst gestaltet werden:session="/usr/local/etc/shibboleth/sessionError.html“metadata="/usr/local/etc/shibboleth/metadataError.html" rm="/usr/local/etc/shibboleth/rmError.html" access="/usr/local/etc/shibboleth/accessError.html"
![Page 21: Die Technik des Service Provider 2. Shibboleth-Workshop Freiburg, 23. März Dr. Jochen Lienhard AAR Projekt UB Freiburg Authentifizierung, Autorisierung](https://reader036.vdocuments.pub/reader036/viewer/2022062818/570491c51a28ab14218dab37/html5/thumbnails/21.jpg)
Dr. Jochen Lienhard, AAR Projekt, UB Freiburg 21
Timeouts
• diverse Timeouts einstellbar– für die Kommunikation– für die Session
• beachten, welche Timeouts die IdPs haben• Gleichgewicht finden!
• Änderung diese Konzepts für Shibboleth 2.x vorgesehen.
![Page 22: Die Technik des Service Provider 2. Shibboleth-Workshop Freiburg, 23. März Dr. Jochen Lienhard AAR Projekt UB Freiburg Authentifizierung, Autorisierung](https://reader036.vdocuments.pub/reader036/viewer/2022062818/570491c51a28ab14218dab37/html5/thumbnails/22.jpg)
Dr. Jochen Lienhard, AAR Projekt, UB Freiburg 22
Einbindung in mehrere Föderationen
• notwendig für internationale Anbieter, falls nur länderspezifischen Föderationen existieren.– alternativ: eigene Föderation
• Realisierbar durch mehrere Applications• Verschiedene URLs definieren und schützen• Zugriff auf verschiedene WAYFs
– ein metadata.xml
![Page 23: Die Technik des Service Provider 2. Shibboleth-Workshop Freiburg, 23. März Dr. Jochen Lienhard AAR Projekt UB Freiburg Authentifizierung, Autorisierung](https://reader036.vdocuments.pub/reader036/viewer/2022062818/570491c51a28ab14218dab37/html5/thumbnails/23.jpg)
Dr. Jochen Lienhard, AAR Projekt, UB Freiburg 23
WAYF beim SP
• Problem, welcher WAYF verwendet werden soll, wenn der SP mehreren Föderationen angehört.
• Vorteile:– gezielte Weiterleitung zum entsprechenden IdP
möglich (Session Initiator)– nur eigene Kunden sind im WAYF
• Nachteil:– zusätzliche Komponente, die gepflegt werden muss.
![Page 24: Die Technik des Service Provider 2. Shibboleth-Workshop Freiburg, 23. März Dr. Jochen Lienhard AAR Projekt UB Freiburg Authentifizierung, Autorisierung](https://reader036.vdocuments.pub/reader036/viewer/2022062818/570491c51a28ab14218dab37/html5/thumbnails/24.jpg)
Dr. Jochen Lienhard, AAR Projekt, UB Freiburg 24
„Migrationscheckliste“
• Wie werden die Ressourcen bisher geschützt (Apache, Tomcat, eigenes Verfahren, ...)?
• Existiert ein Sitzungsmanagement?• Kann dieses weiter verwendet werden, z.B. indem
eine Sitzung über Shibboleth aufgebaut wird?• Existiert eine Rechteverwaltung?• Können die dafür notwendigen Informationen per
Shibboleth über Attribute bereitgestellt werden?• Können die Identity-Provider die Attribute liefern?
![Page 25: Die Technik des Service Provider 2. Shibboleth-Workshop Freiburg, 23. März Dr. Jochen Lienhard AAR Projekt UB Freiburg Authentifizierung, Autorisierung](https://reader036.vdocuments.pub/reader036/viewer/2022062818/570491c51a28ab14218dab37/html5/thumbnails/25.jpg)
Dr. Jochen Lienhard, AAR Projekt, UB Freiburg 25
Beispiele von SP
• Nagios (Überwachungssystem)• Stokat Bibl.Verwaltungssystem• ReDI Regionale Datenbank-Information
Baden-Württemberg
→ Details am Nachmittag
![Page 26: Die Technik des Service Provider 2. Shibboleth-Workshop Freiburg, 23. März Dr. Jochen Lienhard AAR Projekt UB Freiburg Authentifizierung, Autorisierung](https://reader036.vdocuments.pub/reader036/viewer/2022062818/570491c51a28ab14218dab37/html5/thumbnails/26.jpg)
Fragen,Probleme,
Anregungen?