Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung Nächste ÜberarbeitungBeide Seiten der Revision |
de:shibeds [2015/11/11 13:40] – Wolfgang Pempe | de:shibeds [2020/04/07 14:38] – Raoul Gunnar Borenius |
---|
====== Shibboleth Embedded Discovery Service (EDS) ====== | ====== Shibboleth Embedded Discovery Service (EDS) ====== |
| |
| Sofern Ihr SP seinen Service nur gewissen Einrichtungen zur Verfügung stellt, empfehlen wir einen sogenannten Metadata-Filter im SP zu konfigurieren: |
| |
| 1. Beispiel-Filter: explizite Angabe der gewünschten IdPs: |
| |
| <file xml /etc/shibboleth/shibboleth2.xml> |
| |
| ... |
| <MetadataProvider type="Chaining"> |
| <MetadataProvider type="XML" |
| uri="https://www.aai.dfn.de/fileadmin/metadata/DFN-AAI-Basic-metadata.xml" |
| backingFilePath="DFN-AAI-Basic-metadata.xml" |
| minRefreshDelay="240" reloadInterval="300"> |
| <MetadataFilter type="RequireValidUntil" maxValidityInterval="604800"/> |
| <MetadataFilter type="Signature" certificate="/etc/ssl/aai/dfn-aai.g2.pem" /> |
| <MetadataFilter type="Whitelist"> |
| <Include>https://idp.uni-beispiel1.de/idp/shibboleth</Include> |
| <Include>https://idp.uni-beispiel2.de/idp/shibboleth</Include> |
| <Include>https://idp.uni-beispiel3.de/idp/shibboleth</Include> |
| </MetadataFilter> |
| </MetadataProvider> |
| ... |
| |
| </MetadataProvider> |
| </file> |
| |
| 2. Beispiel: Positiv-Auswahl anhand einer **Entity Category** |
| |
| siehe Online-Dokumentation des bwIDM-Projekts unter https://www.bwidm.de/teilnahme/dienstanbieter/ (Abschnitt 1.2 - Technische Voraussetzungen) |
| |
| |
Beim EDS handelt es sich um einen Satz von Java Scripts, der sich in beliebige HTML-Seiten einbetten lässt und der mit dem vom Shibboleth SP ab Version 2.4 generierten [[https://wiki.shibboleth.net/confluence/display/SHIB2/NativeSPHandler#NativeSPHandler-DiscoveryFeedHandler%28Version2.4andAbove%29|Discovery Feed]] arbeitet (/Shibboleth.sso/DiscoFeed). Hierbei handelt es sich um (IdP-)Daten im JSON-Format, die aus den über ein oder mehrere [[https://wiki.shibboleth.net/confluence/display/SHIB2/NativeSPMetadataProvider|MetadataProvider-Elemente]] verfügbaren Metadaten generiert werden - nach Anwendung etwaiger [[https://wiki.shibboleth.net/confluence/display/SHIB2/NativeSPMetadataFilter|MetadataFilter]], z.B. einer [[https://wiki.shibboleth.net/confluence/display/SHIB2/NativeSPMetadataFilter#NativeSPMetadataFilter-WhitelistMetadataFilter|Whitelist von Entity IDs zugriffsberechtigter IdPs oder einer EntityCategory]]. Auf diese Weise lässt sich mit geringem Aufwand eine Einrichtungsauswahl realisieren, die ausschließlich IdPs von Einrichtungen enthält, deren NutzerInnen Zugriff auf den vom SP geschützten Dienst erhalten sollen. | Beim EDS handelt es sich um einen Satz von Java Scripts, der sich in beliebige HTML-Seiten einbetten lässt und der mit dem vom Shibboleth SP ab Version 2.4 generierten [[https://wiki.shibboleth.net/confluence/display/SHIB2/NativeSPHandler#NativeSPHandler-DiscoveryFeedHandler%28Version2.4andAbove%29|Discovery Feed]] arbeitet (/Shibboleth.sso/DiscoFeed). Hierbei handelt es sich um (IdP-)Daten im JSON-Format, die aus den über ein oder mehrere [[https://wiki.shibboleth.net/confluence/display/SHIB2/NativeSPMetadataProvider|MetadataProvider-Elemente]] verfügbaren Metadaten generiert werden - nach Anwendung etwaiger [[https://wiki.shibboleth.net/confluence/display/SHIB2/NativeSPMetadataFilter|MetadataFilter]], z.B. einer [[https://wiki.shibboleth.net/confluence/display/SHIB2/NativeSPMetadataFilter#NativeSPMetadataFilter-WhitelistMetadataFilter|Whitelist von Entity IDs zugriffsberechtigter IdPs oder einer EntityCategory]]. Auf diese Weise lässt sich mit geringem Aufwand eine Einrichtungsauswahl realisieren, die ausschließlich IdPs von Einrichtungen enthält, deren NutzerInnen Zugriff auf den vom SP geschützten Dienst erhalten sollen. |
* Für das <noscript>-Element empfiehlt sich der Link auf einen zentralen WAYF/DS, z.B.\\ ''https://wayf.aai.dfn.de/DFN-AAI-Basic/wayf?entityID=https%3A%2F%2Fsp.uni-beispiel.de%2Fshibboleth&return=https%3A%2F%2Fsp.uni-beispiel.de%2FShibboleth.sso%2FLogin%3FSAMLDS%3D1'' | * Für das <noscript>-Element empfiehlt sich der Link auf einen zentralen WAYF/DS, z.B.\\ ''https://wayf.aai.dfn.de/DFN-AAI-Basic/wayf?entityID=https%3A%2F%2Fsp.uni-beispiel.de%2Fshibboleth&return=https%3A%2F%2Fsp.uni-beispiel.de%2FShibboleth.sso%2FLogin%3FSAMLDS%3D1'' |
* Spezifische Anpassungen müssen in ''idpselect_config.js'' und ggf. ''idpselect.css'' vorgenommen werden, siehe hierzu die Kommentare in den betreffenden Dateien sowie die [[https://wiki.shibboleth.net/confluence/display/EDS10/3.+Configuration|offizielle Dokumentation]] | * Spezifische Anpassungen müssen in ''idpselect_config.js'' und ggf. ''idpselect.css'' vorgenommen werden, siehe hierzu die Kommentare in den betreffenden Dateien sowie die [[https://wiki.shibboleth.net/confluence/display/EDS10/3.+Configuration|offizielle Dokumentation]] |
| |
===== Konfiguration des Service Providers ===== | |
üblicherweise unter ''/etc/shibboleth/shibboleth2.xml'': | |
<file xml /etc/shibboleth/shibboleth2.xml> | |
<SSO discoveryProtocol="SAMLDS" discoveryURL="https://sp.uni-beispiel.de/ds/index.html"> | |
SAML2 | |
</SSO> | |
</file> | |
| |