Shibboleth v praxi
Seminář Shibboleth v praxi se konal 20. října 2010 v Národní technické knihovně v Praze, v rámci projektu "Moderní informační a komunikační technologie v knihovnictví 2010". Pořádán byl ve spolupráci NTK a České akademické federace identit eduID.cz [4].
Seminář byl zaměřen na praktické aspekty využití technologie Shibboleth, čemuž odpovídala i skladba přednášek. Po obecném úvodu se hovořilo o využití Shibbolethu při přístupu k licencovaným elektronickým zdrojům, a to jak přímo (J.Pavlík), tak prostřednictvím proxy serveru EZproxy (P.Novák). Institucionální repozitář DSpace byl uveden jako příklad systému, který lze "shibboletizovat" (V.Krejčíř). Shibboleth lze využít i k jednotnému přihlašování do více systému požadujících autentikaci, což bylo ukázáno na systémech ExLibris (J. Pavlík), ale i systémů vyvinutých v rámci Identity managementu v Národní technické knihovně (V. Jansa).
V první a nejméně technické přednášce popsal Jiří Pavlík (UK Praha / CESNET) nejprve výhody využití Shibbolethu - bezpečnost a uživatelský komfort. I když se uživatel přihlašuje například k elektronickému zdroji, jeho autentikační údaje (tzn. jméno a heslo) se předávají vždy pouze systému jeho instituce a elektronickému zdroji se předává jen nutné minimum informací. Zároveň ale zdroj může identifikovat konkrétního uživatele (což se při přístupu přes IP adresy neděje) a přihlásit ho tak do vlastního účtu. Uživatelé získají jednotný bod pro vzdálený a přímý přístup a hlavně možnost jednotného přihlášení (anglicky SSO - Single Sign-On). Po přihlášení k jednomu zdroji už není nutné se v rámci sezení přihlašovat znovu, a to ani k jinému zdroji využívající technologie Shibboleth.
Shibboleth sám je jednou z implementací protokolu SAML a je používán především akademickými institucemi a v knihovnách. V České republice jsou instituce využívající Shibboleth sdruženy ve federaci eduID.cz [5], jejímž operátorem je sdružení CESNET. Federace potom vyjednává jako celek s jednotlivými poskytovateli elektronických zdrojů, ale nabízí i další služby využívající společné platformy pro správu identit. Příkladem může být přístup k obsahu portálu Mefanet [6], či ke službě Masarykovy Univerzity Atlases [7], kterou mohou navíc využívat i členové dalších evropských federací.
K připojení elektronického zdroje s podporou technologie Shibboleth je nutné splnit dvě podmínky - mít k dispozici tzv. Identity Provider (službu k ověření identy), který je připojen ve federaci eduID.cz a předplatné k tomuto zdroji. Konkrétní návody jsou k dispozici na webu eduID.cz.
Na elektronický zdroj, u nějž se používá autentizace prostřednictvím technologie Shibboleth, lze odkazovat dvěma různými způsoby - označují se WAYF a WAYFless. Při použití WAYF (zkratka z anglického "Where are you from?" - Odkud jsi?) musí uživatel systému říct odkud přichází - například tedy postupně zvolit federaci (eduID.cz) a instituci (Univerzita Karlova). Až poté se mu zobrazí přihlašovací okno Identity Provideru Univerzity Karlovy a po přihlášení se dostane do požadovaného systému. V případě WAYFless je informace o tom, odkud uživatel přichází, napevno obsažena v URL odkazu. Těchto odkazů využívá například Portál elektronických zdrojů UK [8].
Ve druhé přednášce popsal Vlastimil Krejčíř (MU Brno) implementaci technologie Shibboleth do repozitářového systému DSpace [9] Masarykovy univerzity. DSpace (zatím) nativně tuto technologii nepodporuje, ale je možné využít modul pro Shibboleth v serveru Apache. V takovém případě je potřeba nakonfigurovat nejen samotný DSpace, ale i Apache a Tomcat. V konfiguraci samotného repozitáře je nakonec potřeba nastavit novou autentizační metodu, určit jaké informace se musí do systému přenášet a případně nastavit rozlišování uživatelských rolí (tedy například členství v konkrétních fakultách).
Jiří Pavlík se ve třetí přednášce věnoval produktům ExLibris (konkrétně šlo o SFX, Aleph, MetaLib, Primo a DigiTool) a implementaci technologie Shibboleth v nich. Za hlavní benefit lze považovat jednotné přihlášení, které ušetří uživateli několikeré opakované zadávání přihlašovacích údajů. Má-li například knihovna v Alephu záznamy elektronických zdrojů a uživatel se přihlásí ke svému kontu, může z katalogu rovnou přistupovat k plným textům aniž by musel být ve vnitřní síti, nebo se znovu přihlašovat na proxy server.
SFX, používané především pro přístup k plným textům z elektronických zdrojů, samo o sobě nevyužívá přihlašování uživatelů, nicméně i u něj lze provést změny nastavení využívající technologie Shibboleth. Pokud se bude k autentizaci uživatelů používat Shibboleth, není nutné směřovat uživatele k plnému textu skrz proxy server, ale místo něj lze použít WAYFless odkazy. I kdyby pak uživatel chtěl přistupovat k více zdrojům, přihlašoval by se pouze jednou - u prvního zdroje.
Ostatní vyjmenované produkty ExLibris využívají pro autentizaci uživatelů modul zvaný PDS (Patron Directory Services) jehož nová verze 2.0 je k dispozici od září 2010. Přináší novou topologii, ve které se využívá PDS pro každou službu zvlášť, aby případný výpadek jediného centrálního modulu neohrozil ostatní systémy. Do modulu PDS je možné nainstalovat Shibboleth Service Provider - popis tohoto procesu je k dispozici na dokumentačním portálu ExLibris. V případě zájmu nabídl Jiří Pavlík školení či konzultace.
Z jiného pohledu pojal problematiku Václav Jansa (Národní technická knihovna) a ve svém příspěvku se věnoval spíše Identity Managementu jako takovému. V NTK je Shibboleth v tuto chvíli využit jako součást infrastruktury poskytující možnost jednotného přihlášení do většiny poskytovaných systémů a u dalších se zapojení připravuje - uživatelé si na komfort jednotného přihlášení rychle zvykají. Ve správě identit ovšem záleží na dalších prvcích infrastruktury a jejich úspěšném propojení a fungování. S využitím technologie Shibboleth se v NTK počítalo už od počátku a jeho podpora byla jedním z požadavků na nově budované systémy.
V závěrečné přednášce popsal Petr Novák (UK Praha) nastavení systému EZproxy. EZproxy je proxy server používaný v celé řadě institucí k přístupu k elektronickým zdrojům z IP adres mimo vlastní síť. Univerzita Karlova jej začala používat poměrně nedávno, přičemž k autentikaci využívá Shibboleth, což přináší několik výhod. EZproxy pak může být například používána několika institucemi, lépe je vyřešeno předávání atributů a filtrování uživatelů a také již několikrát zmiňované jednotné přihlášení. EZproxy oficiálně podporuje Shibboleth od roku 2005, v české testovací federaci existuje implementace od roku 2008.
Pro samotné připojení je nejprve třeba nakonfigurovat certifikát pro podepisování a šifrování konfigurace a vytvořit k němu Shibboleth metadata. Následně se aktivuje Shibboleth v konfiguračních souborech EZproxy a upraví se přihlašovací stránka systému. Je možné nastavit i skupiny pro přístup (například fakulty, nebo pracoviště). Jako nedostatek současného systému byla zmíněna nemožnost jednotného odhlášení (Single Log Out) - pro odhlášení je nutné vypnout webový prohlížeč.
Prezentace ze semináře jsou k dispozici na adrese slideshare.net/event/shibboleth-v-praxi [10], díky Audiovizi NTK a sdružení CESNET je k dispozici i záznam [11]. Podrobnější dokumentace k implementaci technologie Shibboleth a České federaci eduID.cz pak je na webu www.eduid.cz [12].