Sie befinden sich im Service: Identity Management

Auswahl der Identity Provider einschränken

Auswahl der Identity Provider einschränken

 Detailinformation

Mit der Aktualisierung auf den Identity Provider 3.3 fällt der RWTH Aachen zentrale Discovery Service (DS) weg. Um auch in Zukunft die Auswahl an Identity Providern einzuschränken, können Sie den Shibboleth Embedded Discovery Service (EDS) benutzen.

Embedded Discovery Service (EDS)

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 Discovery Feed arbeitet (/Shibboleth.sso/DiscoFeed). Hierbei handelt es sich um (IdP-)Daten im JSON-Format, die aus den über ein oder mehrere MetadataProvider-Elemente verfügbaren Metadaten generiert werden - nach Anwendung etwaiger MetadataFilter, z.B. einer 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 Service Provider (SP) geschützten Dienst erhalten sollen.

Die offizielle Dokumentation zum EDS befindet sich im Shibboleth Wiki.

Hier eine kleine Anleitung, wie man den EDS selbst installiert:

  • Download unter http://shibboleth.net/downloads/embedded-discovery-service/latest/
  • Aus der heruntergeladenen ZIP-Datei werden nur die folgenden Dateien benötigt: idpselect_config.js, idpselect.js und ggf. index.html
  • Dateien in das Webserver Verzeichnis kopieren (meist unter /var/www/html)
  • index.html den eigenen Bedürfnissen anpassen oder eine eigene Seite anlegen, in der die JavaScript-Aufrufe eingebettet werden. Siehe dazu die Kommentare in der index.html sowie die offizielle Dokumentation
    • Für das <noscript>-Element empfiehlt sich der Link auf einen zentralen WAYF/DS, hier findet sich Dokumentation zu den zentralen Discovery Services des DFN-Vereins
  • Spezifische Anpassungen müssen in idpselect_config.js und ggf. idpselect.css vorgenommen werden, siehe hierzu die Kommentare in den betreffenden Dateien sowie die offizielle Dokumentation

Konfiguration des Service Providers (üblicherweise unter /etc/shibblet/shibboleth2.xml):

<SSO discoveryProtocol="SAMLDS" discoveryURL="https://sp.uni-beispiel.de/ds/index.html">

  SAML2

</SSO>

   

<!-- i.d.R. in Kombination mit einem MetadataFilter: -->

   

<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.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>

   <!-- hier ggf. weitere MetadataProvider-Elemente -->

</MetadataProvider>

Konfiguration des Webservers

In die VHost Konfiguration einfügen:

Alias /ds /var/www/html/

<Location /ds>

  Require all granted

</Location>

zuletzt geändert am 27.08.2024

Wie hat Ihnen dieser Inhalt geholfen?

Creative Commons Lizenzvertrag
Dieses Werk ist lizenziert unter einer Creative Commons Namensnennung - Weitergabe unter gleichen Bedingungen 3.0 Deutschland Lizenz