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.

Shibboleth v Praxi - DSpace (Vlastimil Krejčíř)

1.079 Aufrufe

Veröffentlicht am

Nastavení autentizace prostřednictvím Shibbolethu v systému DSpace.

Chcete vědět víc? Mnoho dalších prezentací, videí z konferencí, fotografií i jiných dokumentů je k dispozici v institucionálním repozitáři NTK: http://repozitar.techlib.cz

Would you like to know more? Find presentations, reports, conference videos, photos and much more in our institutional repository at: http://repozitar.techlib.cz/?ln=en

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

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

Shibboleth v Praxi - DSpace (Vlastimil Krejčíř)

  1. 1. Shibboleth v systému DSpace Vlastimil Krejčíř, krejcir@ics.muni.cz Ústav výpočetní techniky, Masarykova univerzita, Brno Shibboleth v praxi, NTK Praha Vlastimil Krejčíř, krejcir@ics.muni.cz Shibboleth v systému DSpace
  2. 2. Shibbolizace DSpace DSpace jako service provider, Shibboleth jako SSO. Vlastimil Krejčíř, krejcir@ics.muni.cz Shibboleth v systému DSpace
  3. 3. Základní informace DSpace verze 1.5.x a vyšší Apache HTTP server (2.2.x) + Shibboleth modul Základní zdroje: https://mams.melcoe.mq.edu.au/zope/mams/pubs/Installation/dspace15/view https://www.eduid.cz/wiki/cztestfed/howto/sp2/index Ve stable verzi (1.6.2) neumí DSpace Shibboleth nativně (přes knihovny v Javě), ale je nutné použít Apache Server jako SP. DSpace pak používá posílané hlavičky. V budoucích verzích (?) snad nativní podpora. Vlastimil Krejčíř, krejcir@ics.muni.cz Shibboleth v systému DSpace
  4. 4. Základní přehled nastavení instalace SP v rámci Apache HTTP serveru napojení Apache na Tomcat (mod proxy, mod jk) konfigurace serveru Tomcat konfigurace DSpace (dspace.cfg) Vlastimil Krejčíř, krejcir@ics.muni.cz Shibboleth v systému DSpace
  5. 5. Instalace SP v Apache nainstalovat webový server Apache nainstalovat software pro Shibboleth (SP) default nastavení SP pro Apache nemá nastaveno posílání některých pro DSpace důležitých atributů, které je nutné odkomentovat v souboru attribute-map.xml: mail givenName sn Vlastimil Krejčíř, krejcir@ics.muni.cz Shibboleth v systému DSpace
  6. 6. Apache HTTP server + Tomcat DSpace běží na serveru Tomcat (nebo podobném) pro Shibboleth v DSpace je NUTNÉ napojit Tomcat na Apache DSpace jako virtuální server v Apache (http i https) Apache jako klasická reverzní proxy (mod proxy) využití protokolu AJP 1.3 (mod jk) Vlastimil Krejčíř, krejcir@ics.muni.cz Shibboleth v systému DSpace
  7. 7. Výchozí nastavení pro následující ukázky konfigurace předpokládejme, že Tomcat i Apache běží na tomtéž lokálním serveru DSpace běží na serveru Tomcat s adresou 127.0.0.1 (localhost) port 8080 hlavní aplikace (např. jspui) je v kořenu (tedy http://localhost:8080/) – nastavení např. přes <Context path="" docBase="jspui" /> Vlastimil Krejčíř, krejcir@ics.muni.cz Shibboleth v systému DSpace
  8. 8. Apache jako klasická proxy <VirtualHost dspace.muni.cz:443> ... ProxyPass /Shibboleth.sso ! <Location /shibboleth-login> AuthType shibboleth ShibRequireSession On ShibUseHeaders On Require valid-user </Location> <Location /> ProxyPass http://127.0.0.1:8080/ ProxyPassReverse http://127.0.0.1:8080/ </Location> Vlastimil Krejčíř, krejcir@ics.muni.cz Shibboleth v systému DSpace
  9. 9. Konfigurace přes protokol AJP Worker je pojmenovaný tomcat (viz dále). V Apache nutné nahrát modul mod jk. <VirtualHost dspace.muni.cz:443> ... JkMount /* tomcat JkUnMount /Shibboleth.sso/* tomcat JkUnMount /shibboleth tomcat JkUnMount /shibboleth-sp/* tomcat <Location /shibboleth-login> AuthType shibboleth ShibRequireSession On ShibUseHeaders On Require valid-user </Location> Vlastimil Krejčíř, krejcir@ics.muni.cz Shibboleth v systému DSpace
  10. 10. Konfigurace přes protokol AJP II V souboru ${TOMCAT}/conf/workers.properties nastavit worker: workers.tomcat home=/opt/tomcat/ worker.list=tomcat worker.default.port=8009 worker.default.host=localhost worker.default.type=ajp13 worker.default.lbfactor=1 Vlastimil Krejčíř, krejcir@ics.muni.cz Shibboleth v systému DSpace
  11. 11. Konfigurace přes protokol AJP III V souboru ${TOMCAT}/conf/server.xml nastavit AJP: <Service name="Catalina"> ... <Connector port="8009" protocol="AJP/1.3" redirectPort="443" tomcatAuthentication="false" address="127.0.0.1" URIEncoding="UTF-8" /> Vlastimil Krejčíř, krejcir@ics.muni.cz Shibboleth v systému DSpace
  12. 12. DSpace a Shibboleth – co to umí? nastavení pořadí autentizačních metod (není nutné použít výlučně jednu) načtení mailu (povinné), jméno, příjmení autoregistrace definování rolí dle affiliation (groups) Vlastimil Krejčíř, krejcir@ics.muni.cz Shibboleth v systému DSpace
  13. 13. Nastavení DSpace konfigurační soubor ${DSPACE}/config/dspace.cfg direktivy authentication.shib.* Nastavení pořadí autentizace (Shibboleth a default auth): plugin.sequence.org.dspace.authenticate.AuthenticationMethod = org.dspace.authenticate.ShibAuthentication, org.dspace.authenticate.PasswordAuthentication Vlastimil Krejčíř, krejcir@ics.muni.cz Shibboleth v systému DSpace
  14. 14. Nastavení DSpace II Nastavení základních atributů předávaných serverem (hlavičky) - dle SP attribute-map.xml: authentication.shib.email-header = mail authentication.shib.firstname-header = givenName authentication.shib.lastname-header = sn Vlastimil Krejčíř, krejcir@ics.muni.cz Shibboleth v systému DSpace
  15. 15. Nastavení DSpace III Další nastavení (použití autentizačního systému Tomcatu, nastavení autoregistrace, nastavení session): authentication.shib.email-use-tomcat-remote-user = false authentication.shib.autoregister = true webui.session.invalidate = false Vlastimil Krejčíř, krejcir@ics.muni.cz Shibboleth v systému DSpace
  16. 16. Nastavení DSpace IV Nastavení rolí – je možné použít scoped i unscoped affiliation. Scoped affiliation se ořezává (member@muni.cz → member). authentication.shib.role-header = unscoped-affiliation authentication.shib.role-header.ignore-scope = false použijeme-li scoped affiliation, pak nastavit na true webui.session.invalidate = false doporučeno vývojáři Vlastimil Krejčíř, krejcir@ics.muni.cz Shibboleth v systému DSpace
  17. 17. Nastavení DSpace V Nastavení default rolí (selže-li načtení affiliation): authentication.shib.default-roles = member Přiřazení dle role do skupiny (group): authentication.shib.role.member = MEMBER MUNI authentication.shib.role.employee = EMPLOYEE MUNI Vlastimil Krejčíř, krejcir@ics.muni.cz Shibboleth v systému DSpace
  18. 18. Problémy špatné předávání UTF-8 znaků u atributů sn a givenName jedná se o bug ve stable verzi 1.6.2 (a menší) hlavičky posílané v ISO-8859-1 nejsou konvertovány nutné pro fname a sname provést v souboru ShibAuthentication.java: new String(prom.getBytes("iso-8859-1"),"utf-8"); s doporučeným nastavením nefunguje správné přiřazování skupin dle affiliation pravděpodobně bug Vlastimil Krejčíř, krejcir@ics.muni.cz Shibboleth v systému DSpace
  19. 19. Děkuji za pozornost. Vlastimil Krejčíř, krejcir@ics.muni.cz Shibboleth v systému DSpace

×