Obsah

Identity Provider 4 (IdP)

Tento návod popisuje instalaci a konfiguraci poskytovatele identit (Identity Provider, IdP). Přestože existují i jiné možnosti (např. SimpleSAMLphp), doporučujeme použít Shibboleth IdP řady 4, jemuž se tento návod věnuje.

Podpora pro Shibboleth IdP řady 3 byla ukončena k 31. 12. 2020. Tento návod se tedy týká již nové řady 4.

Můžete buď instalovat úplně od začátku anebo aktualizovat z poslední verze řady 3.

Požadavky

Sdružení CESNET doporučuje provozovat Shibboleth IdP na aktuální verzi 64bitové linuxové distribuce Debian, pro niž je tento návod sepsán.

Pro instalaci můžete použít jak dedikovaný hardware, tak virtuální stroj. Systém by však měl splňovat alespoň následující výkonové požadavky, které závisí mimo jiné na množství obsluhovaných uživatelů:

Pro správnou funkčnost je velice důležité, aby měl server přesně nastavený a synchronizovaný čas. SAML zprávy obsahují časové značky, které jsou kontrolovány, a pokud je čas na serveru špatně, autentizace uživatelů nebude fungovat.

Z pohledu softwarové výbavy je pro běh potřeba následující:

Shibboleth IdP je webová aplikace naprogramovaná v Javě, která pro svůj běh potřebuje kromě samotné Javy ještě servletový kontejner a samozřejmě i webový server. Pro obojí použijeme Jetty z balíčků Debianu.

Dále je také potřeba databáze pro ukládání souhlasů s uvolněním uživatelských informací (atributů) a ukládání pseudonáhodného řetězce pro atribut eduPersonTargetedID / persistentní NameID. Jako databázi použijeme MariaDB.

Instalace

V tomto návodu budeme používat utility, které nejsou součástí minimální instalace Debianu, a proto si je nainstalujeme:

# Instalace používaných utilit
apt install --no-install-recommends dirmngr gpg less vim

Zbývající instalace je rozdělena do třech kroků: