cs:tech:sp:shibboleth

Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

Obě strany předchozí revize Předchozí verze
Následující verze
Předchozí verze
Následující verze Obě strany příští revize
cs:tech:sp:shibboleth [2019/11/27 10:13]
jan.oppolzer@cesnet.cz [Metadata služby]
cs:tech:sp:shibboleth [2020/02/04 14:43]
jan.tomasek@cesnet.cz
Řádek 1: Řádek 1:
-====== ​Návod k Shibboleth SP řady 2.6 ======+====== Shibboleth SP ======
  
 <WRAP center round tip 100%> <WRAP center round tip 100%>
-**Shibboleth SP řady 3.a Debian ​10 Buster**+**Shibboleth SP řady 2.a Debian ​9 Stretch**
  
-Hledáte-li návod pro Shibboleth SP řady 3.0, který je dostupný v Debianu ​10 s kódovým označením [[https://​www.debian.org/​releases/​buster/|Buster]], naleznete ho na [[cs:​tech:​sp:​shibboleth3|této stránce]].+Hledáte-li návod pro Shibboleth SP řady 2.6, který je dostupný v Debianu ​s kódovým označením [[https://​www.debian.org/​releases/​stretch/|Stretch]], naleznete ho na [[cs:​tech:​sp:​shibboleth2|této stránce]].
 </​WRAP>​ </​WRAP>​
  
-Následující návod popisuje instalaci a konfiguraci [[https://​shibboleth.net/​products/​service-provider.html|Shibboleth SP]] verze 2.6.0. Jako poskytovatele služby (Service Provider, SP) můžeme také použít [[https://​simplesamlphp.org/​|SimpleSAMLphp]],​ jehož instalace a konfigurace je na našich stránkách také [[:cs:tech:sp:simplesamlphp|zdokumentována]].+Následující návod popisuje instalaci a konfiguraci [[https://​shibboleth.net/​products/​service-provider.html|Shibboleth SP]] verze 3.0.4. Jako poskytovatele služby (Service Provider, SP) můžete také použít [[https://​simplesamlphp.org/​|SimpleSAMLphp]],​ jehož instalace a konfigurace je na našich stránkách také [[https://​www.eduid.cz/​cs/tech/sp/simplesamlphp|zdokumentována]].
  
-V návodu budeme používat linuxovou distribuci [[https://​www.debian.org/​|Debian]] v jeho poslední verzi s kódovým označením [[https://​www.debian.org/​releases/​stretch/|Stretch]]. Používáte-li jinou distribuci, některé kroky (např. instalace balíčků) se u vás budou odpovídajícím způsobem lišit.+V návodu budeme používat linuxovou distribuci [[https://​www.debian.org/​|Debian]] v jeho poslední verzi 10 s kódovým označením [[https://​www.debian.org/​releases/​buster/|Buster]]. Používáte-li jinou distribuci, některé kroky (např. instalace balíčků) se u vás budou odpovídajícím způsobem lišit.
  
 <WRAP center round alert 100%> <WRAP center round alert 100%>
Řádek 19: Řádek 19:
 </​WRAP>​ </​WRAP>​
  
-Návod provází kompletní instalací a konfigurací ​SimpleSAMLphp ​včetně zdrojů metadat federace [[https://​www.eduid.cz/​cs/​tech/​summary|eduID.cz]],​ [[https://​www.hostel.eduid.cz|Hostel IdP]] a Social IdPs (Facebook, GitHub, Google, LinkedIn, ORCID).+Návod provází kompletní instalací a konfigurací ​Shibboleth SP včetně zdrojů metadat federace [[https://​www.eduid.cz/​cs/​tech/​summary|eduID.cz]],​ [[https://​www.hostel.eduid.cz|Hostel IdP]] a Social IdPs (Facebook, GitHub, Google, LinkedIn, ORCID).
 ===== Instalace ===== ===== Instalace =====
  
Řádek 27: Řádek 26:
 <code bash> <code bash>
 # Instalace Shibboleth SP včetně modulů pro Apache HTTP server # Instalace Shibboleth SP včetně modulů pro Apache HTTP server
-apt-get install libapache2-mod-shib2+apt install libapache2-mod-shib
 </​code>​ </​code>​
  
-Pokud na serveru chybí Apache, je třeba ​ho doinstalovat následujícím příkazem:+Pokud na serveru chybí Apache, ​bude doinstalován jako závislost anebo je možné ​ho nejprve ​doinstalovat následujícím příkazem:
  
 <code bash> <code bash>
 # Instalace Apache # Instalace Apache
-apt-get install apache2+apt install apache2
 </​code>​ </​code>​
  
Řádek 53: Řádek 52:
 <!-- Nastavení entityID --> <!-- Nastavení entityID -->
 <​ApplicationDefaults entityID="​https://​sp.example.org/​shibboleth"​ <​ApplicationDefaults entityID="​https://​sp.example.org/​shibboleth"​
-    REMOTE_USER="​eppn ​persistent-id targeted-id">​+    REMOTE_USER="​eppn ​subject-id pairwise-id persistent-id
 +    cipherSuites="​DEFAULT:​!EXP:​!LOW:​!aNULL:​!eNULL:​!DES:​!IDEA:​!SEED:​!RC4:​!3DES:​!kRSA:​!SSLv2:​!SSLv3:​!TLSv1:​!TLSv1.1">
 </​code>​ </​code>​
 +
 ==== Sezení ==== ==== Sezení ====
  
Řádek 65: Řádek 66:
 </​code>​ </​code>​
  
-==== WAYF ====+==== WAYF/DS ====
  
-Přihlášení ke službě jde nastavit buď vůči jednomu konkrétnímu IdP anebo vůči více IdP pomocí ​WAYFu. Použití ​WAYFu je častější případ. Obojí se provádí v elementu ''<​SSO>''​.+Přihlášení ke službě jde nastavit buď vůči jednomu konkrétnímu IdP anebo vůči více IdP pomocí ​WAYF/DS. Použití ​WAYF/​DS ​je častější případ. Obojí se provádí v elementu ''<​SSO>''​.
  
-Chcete-li použít WAYF a dát tak uživatelům možnost si vybrat svou domovskou organizaci pro ověření, musíte z elementu ''<​SSO>''​ odstranit atribut ''​entityID'',​ následně můžete v atributu ''​discoveryURL''​ nastavit URL adresu ​WAYFu. V následujícím příkladu použijeme WAYF federace eduID.cz, avšak můžete použít svůj vlastní.+Chcete-li použít WAYF/DS a dát tak uživatelům možnost si vybrat svou domovskou organizaci pro ověření, musíte z elementu ''<​SSO>''​ odstranit atribut ''​entityID'',​ následně můžete v atributu ''​discoveryURL''​ nastavit URL adresu ​WAYF/DS. V následujícím příkladu použijeme WAYF/DS federace eduID.cz, avšak můžete použít svůj vlastní.
  
 <code xml> <code xml>
 <!-- Autentizace vůči IdP vybranému z WAYF/DS --> <!-- Autentizace vůči IdP vybranému z WAYF/DS -->
 <SSO discoveryProtocol="​SAMLDS"​ discoveryURL="​https://​ds.eduid.cz/​wayf.php">​ <SSO discoveryProtocol="​SAMLDS"​ discoveryURL="​https://​ds.eduid.cz/​wayf.php">​
-    SAML2 SAML1+    SAML2
 </​SSO>​ </​SSO>​
 </​code>​ </​code>​
Řádek 83: Řádek 84:
 <!-- Autentizace vůči jednomu konkrétnímu IdP --> <!-- Autentizace vůči jednomu konkrétnímu IdP -->
 <SSO entityID="​https://​idp.example.org/​idp/​shibboleth">​ <SSO entityID="​https://​idp.example.org/​idp/​shibboleth">​
-    SAML2 SAML1+    SAML2
 </​SSO>​ </​SSO>​
 </​code>​ </​code>​
Řádek 89: Řádek 90:
 ==== Metadata služby ==== ==== Metadata služby ====
  
-Standardní metadata služby, která si můžete nechat vygenerovat po přístupu na ''<​nowiki>​https://​HOSTNAME/​Shibboleth.sso/​Metadata</​nowiki>'',​ je potřeba doplnit šablonou o určité údaje (např. organizace, kontakt atd.) než je možné službu zaregistrovat do federace. Korektní metadata tedy vygenerujeme následujícím postupem.+Standardní metadata služby, která si můžete nechat vygenerovat po přístupu na ''<​nowiki>​https://​sp.example.org/​Shibboleth.sso/​Metadata</​nowiki>'',​ je potřeba doplnit šablonou o určité údaje (např. organizace, kontakt atd.) než je možné službu zaregistrovat do federace. Korektní metadata tedy vygenerujeme následujícím postupem.
  
 V ''​shibboleth2.xml''​ najdeme element ''<​Handler>''​ týkající se metadat: V ''​shibboleth2.xml''​ najdeme element ''<​Handler>''​ týkající se metadat:
Řádek 165: Řádek 166:
 === Finální metadata === === Finální metadata ===
  
-Metadata jsou teď k dispozici na adrese ''<​nowiki>​https://​sp.example.org/​Shibboleth.sso/​Metadata</​nowiki>''​.+Po restartování ''​shibd''​ procesu budou korektní metadata ​k dispozici na adrese ''<​nowiki>​https://​HOSTNAME/​Shibboleth.sso/​Metadata</​nowiki>''​. 
 + 
 +==== Hodnoty uživatelských atributů ==== 
 + 
 +//Toto je vhodné pouze pro ladění konfigurace a v produkčním stavu služby nemá význam.//​ 
 + 
 +Při přístupu na adresu ''<​nowiki>​https://​HOSTNAME/​Shibboleth.sso/​Session</​nowiki>'' ​se zobrazí, nejste-li přihlášeni,​ pouze informace "//A valid session was not found.//" Pokud ale budete přihlášení,​ čili budete mít na službě vytvořené sezení, uvidíte zajímavé informace, např. které atributy jste od IdP získali. Chcete-li si kromě seznamu atributů nechat zobrazit i jejich hodnoty, musíte změnit hodnotu atributu ''​showAttributeValues''​ na //true// u elementu ''<​Handler>''​ s atributem ''​type''​ rovným hodnotě //​Session//:​ 
 + 
 +<code xml> 
 +<!-- Zobrazení hodnot atributů na diagnostické stránce /​Shibboleth.sso/​Session --> 
 +<Handler type="​Session"​ Location="/​Session"​ showAttributeValues="​true"/>​ 
 +</​code>​ 
 + 
 +==== Kontakt na správce služby ==== 
 + 
 +Je také vhodné nastavit kontakt na správce služby. Pokud přihlášení z nějakého důvodu selže, obvykle se zobrazí i e-mailová adresa, na které je možné informovat správce. 
 + 
 +E-mailová adresa správce se nastavuje v atributu ''​supportContact''​ u elementu ''<​Errors>'':​ 
 + 
 +<code xml> 
 +<Errors supportContact="​root@example.org"​ 
 +    helpLocation="/​about.html"​ 
 +    styleSheet="/​shibboleth-sp/​main.css"/>​ 
 +</​code>​
  
 ==== Metadata federace ==== ==== Metadata federace ====
Řádek 175: Řádek 199:
 <code bash> <code bash>
 # Stažení veřejného klíče pro kontrolu autentičnosti metadat # Stažení veřejného klíče pro kontrolu autentičnosti metadat
-cd /​etc/​shibboleth ​&& \ +wget -P /​etc/​shibboleth https://​www.eduid.cz/​docs/​eduid/​metadata/​metadata.eduid.cz.crt.pem
-  wget https://​www.eduid.cz/​docs/​eduid/​metadata/​metadata.eduid.cz.crt.pem+
 </​code>​ </​code>​
  
-Nyní zbývá nastavit ​zdroj metadat a nezapomenout na ověření pravosti metadat (kontrola vůči veřejnému klíči).+Nyní zbývá nastavit ​zdroje ​metadat a nezapomenout na ověření pravosti metadat (kontrola vůči veřejnému klíči, který jsme právě stáhli).
  
 Konfigurace federace eduID.cz jako zdroje metadat: Konfigurace federace eduID.cz jako zdroje metadat:
Řádek 185: Řádek 208:
 <code xml> <code xml>
 <!-- Metadata federace eduID.cz --> <!-- Metadata federace eduID.cz -->
-<​MetadataProvider type="​XML" ​uri="​https://​metadata.eduid.cz/​entities/​eduid+idp"​ +<​MetadataProvider type="​XML" ​validate="​true"​ 
-    backingFilePath="​eduid+idp.xml" ​reloadInterval="600">​ +    url="​https://​metadata.eduid.cz/​entities/​eduid+idp"​ 
-    <​MetadataFilter type="​Signature"​ certificate="​metadata.eduid.cz.crt.pem"/>​+    backingFilePath="​eduid+idp.xml" ​maxRefreshDelay="900"
 + 
 +    <​MetadataFilter type="​RequireValidUntil"​ maxValidityInterval="​2419200"/​
 +    <​MetadataFilter type="​Signature"​ certificate="​metadata.eduid.cz.crt.pem" verifyBackup="​false"/>
 </​MetadataProvider>​ </​MetadataProvider>​
 +
 </​code>​ </​code>​
  
Řádek 195: Řádek 222:
 <code xml> <code xml>
 <!-- Metadata služby Hostel IdP --> <!-- Metadata služby Hostel IdP -->
-<​MetadataProvider type="​XML" ​uri="​https://​metadata.eduid.cz/​entities/​hostel"​ +<​MetadataProvider type="​XML" ​validate="​true"​ 
-    backingFilePath="​hostel.xml" ​reloadInterval="600">​ +    url="​https://​metadata.eduid.cz/​entities/​hostel"​ 
-    <​MetadataFilter type="​Signature"​ certificate="​metadata.eduid.cz.crt.pem"/>​+    backingFilePath="​hostel.xml" ​maxRefreshDelay="900"
 + 
 +    <​MetadataFilter type="​RequireValidUntil"​ maxValidityInterval="​2419200"/​
 +    <​MetadataFilter type="​Signature"​ certificate="​metadata.eduid.cz.crt.pem" verifyBackup="​false"/>
 </​MetadataProvider>​ </​MetadataProvider>​
 </​code>​ </​code>​
  
-Konfigurace ​služby ​Social ​IdP (Facebook, GitHub, Google, LinkedInORCID) jako zdroje metadat:+Konfigurace ​federace ​Social ​IdPs (Facebook, GitHub, Google, LinkedIn ​ORCID) jako zdroje metadat:
  
 <code xml> <code xml>
 <!-- Metadata služby Social IdP (Facebook, GitHub, Google, LinkedIn, ORCID) --> <!-- Metadata služby Social IdP (Facebook, GitHub, Google, LinkedIn, ORCID) -->
-<​MetadataProvider type="​XML" ​uri="​https://​metadata.eduid.cz/​entities/​socialidps"​ +<​MetadataProvider type="​XML" ​validate="​true"​ 
-    backingFilePath="​socialidps.xml" ​reloadInterval="600">​ +    url="​https://​metadata.eduid.cz/​entities/​socialidps"​ 
-    <​MetadataFilter type="​Signature"​ certificate="​metadata.eduid.cz.crt.pem"/>​+    backingFilePath="​socialidps.xml" ​maxRefreshDelay="900"
 + 
 +    <​MetadataFilter type="​RequireValidUntil"​ maxValidityInterval="​2419200"/​
 +    <​MetadataFilter type="​Signature"​ certificate="​metadata.eduid.cz.crt.pem" verifyBackup="​false"/>
 </​MetadataProvider>​ </​MetadataProvider>​
 </​code>​ </​code>​
  
-Význam atributů elementu [[https://​wiki.shibboleth.net/​confluence/​display/​SHIB2/NativeSPMetadataProvider|<​MetadataProvider>​]]:​+Význam atributů elementu [[https://​wiki.shibboleth.net/​confluence/​display/​SP3/XMLMetadataProvider|<​MetadataProvider>​]]:​
  
-  * type='XML' ​-- metadata jsou načtena z lokálního nebo vzdáleného XML dokumentu,​ +  * type="XML" ​-- metadata jsou načtena z lokálního nebo vzdáleného XML dokumentu,​ 
-  * uri -- URI metadat,+  * url -- URL metadat,
   * backingFilePath -- název (a případně i adresář, výchozí /​var/​cache/​shibboleth/​),​ kam se metadata uloží,   * backingFilePath -- název (a případně i adresář, výchozí /​var/​cache/​shibboleth/​),​ kam se metadata uloží,
-  * reloadInterval ​-- maximální doba mezi načtením nových metadat (v sekundách).+  * maxRefreshDelay ​-- maximální doba mezi načtením nových metadat (v sekundách).
  
- Význam ​atributů elementu ​[[https://​wiki.shibboleth.net/​confluence/​display/​SHIB2/NativeSPMetadataFilter|<​MetadataFilter>​]]:​+Význam ​elementů [[https://​wiki.shibboleth.net/​confluence/​display/​SP3/MetadataFilter|<​MetadataFilter>​]] ​a jeho atributů:
  
-  * type='Signature' -- ověří XML podpis v metadatech,+  * type="​RequireValidUntil"​ -- vyžaduje, aby kořenový element v metadatech měl atribut ​''​validUntil'',​ 
 +  * maxValidityInterval -- maximální doba platnosti metadat v sekundách,​ 
 +  * type="​Signature" ​-- ověří XML podpis v metadatech,
   * certificate -- certifikát obsahující veřejný klíč použitý k ověření podpisu metadat.   * certificate -- certifikát obsahující veřejný klíč použitý k ověření podpisu metadat.
-==== Kontakt na správce služby ==== 
- 
-Je také vhodné nastavit kontakt na správce služby. Pokud přihlášení z nějakého důvodu selže, obvykle se zobrazí i e-mailová adresa, ne které je možné informovat správce. 
- 
-E-mailová adresa správce se nastavuje v atributu ''​supportContact''​ u elementu ''<​Errors>'':​ 
- 
-<code xml> 
-<Errors supportContact="​root@example.org"​ 
-    helpLocation="/​about.html"​ 
-    styleSheet="/​shibboleth-sp/​main.css"/>​ 
-</​code>​ 
  
-==== Vygenerování self-sign certifikátu ====+==== Vygenerování ​a konfigurace ​self-sign certifikátu ====
  
-Komunikace ve federaci se šifruje, proto SP musí v metadatech uvádět svůj veřejný klíč, pomocí něhož IdP bude moci zašifrovanou zprávu (XML assertion) rozšifrovat. ​Jelikož ve federaci máme určitá pravidla pro publikaci metadat, je možné ​v metadatech používat [[:​cs:​tech:​certificates|self-sign certifikát]] s platností ​např. 10 nebo více let. Není nutné ​používat certifikát od důvěryhodné certifikační autority, u něhož je platnost omezena na maximálně ​roky.+Komunikace ve federaci se šifruje, proto SP musí v metadatech uvádět svůj veřejný klíč, pomocí něhož IdP bude moci zašifrovanou zprávu (XML assertion) rozšifrovat. ​Výrazně doporučujeme v metadatech používat [[:​cs:​tech:​certificates|self-sign certifikát]] s dlouho dobou platnosti, ​např. 10 nebo více let. Není vhodné ​používat certifikát od důvěryhodné certifikační autority, u něhož je platnost omezena na maximálně ​roky a následně je nutné tento certifikát vyměnit.
  
 V linuxové distribuci Debian je pro generování self-sign certifikátu pro Shibboleth SP přítomný shellovský skript ''​shib-keygen'',​ který stačí spustit s odpovídajícími parametry. V linuxové distribuci Debian je pro generování self-sign certifikátu pro Shibboleth SP přítomný shellovský skript ''​shib-keygen'',​ který stačí spustit s odpovídajícími parametry.
Řádek 250: Řádek 274:
   * -y -- platnost certifikátu v rocích,   * -y -- platnost certifikátu v rocích,
   * -e -- entityID, pro které certifikát vystavujeme.   * -e -- entityID, pro které certifikát vystavujeme.
 +
 +Certifikát,​ resp. klíč, se uloží do souboru ''​sp-cert.pem'',​ resp. ''​sp-key.pem''​ v adresáři ''/​etc/​shibboleth/''​. Nyní již jen zbývá nakonfigurovat použití self-sign certifikátu v Shibbolethu. Původní elementy ''<​CredentialResolver>''​ zakomentujeme nebo smažeme a poté na jejich místo uvedeme následující (všimněte si, že oproti původním elementům zde není žádný atribut ''​use''​):​
 +
 +<code xml>
 +<​CredentialResolver type="​File"​ key="​sp-key.pem"​ certificate="​sp-cert.pem"/>​
 +</​code>​
 +
 +==== Restart Shibboleth SP ====
 +
 +Nyní musíme restartovat Shibboleth SP, aby se načetla nová konfigurace.
 +
 +<code bash>
 +systemctl restart shibd
 +</​code>​
  
 ===== Registrace služby v metadatech federace eduID.cz ===== ===== Registrace služby v metadatech federace eduID.cz =====
  
-Nyní je potřeba službu zaregistrovat do federace [[cs:​tech:​metadata-publication|eduID.cz]].+Nyní je potřeba službu zaregistrovat do federace [[cs:​tech:​metadata-publication|eduID.cz]]. Stáhněte metadata z adresy ''<​nowiki>​https://​HOSTNAME/​Shibboleth.sso/​Metadata</​nowiki>''​ a pošlete metadata na e-mailovou adresu [[eduid-admin@eduid.cz]]. Nezapomeňte e-mail digitálně podepsat odpovídajícím certifikátem a také na skutečnost,​ že metadata musí poslat odpovídající osoba, tj. jmenovaný administrativní nebo technický kontakt za danou organizaci.
  
 ===== Použití u Apache ===== ===== Použití u Apache =====
Řádek 259: Řádek 297:
 ==== Uživatelské atributy ==== ==== Uživatelské atributy ====
  
-Uživatelské atributy získá web server v proměnných,​ které se definují v konfiguračním souboru ''​attribute-map.xml''​. Například níže uvedené mapování zajistí, že proměnné obsahující [[cs:​tech:​attributes:​givenname|křestní jméno]] a [[cs:​tech:​attributes:​sn|příjmení]] (v SAML1 i SAML2 kódování),​ budou dostupné v proměnných //​[[cs:​tech:​attributes:​givenname]]//​ a //​[[cs:​tech:​attributes:​sn]]//​.+Uživatelské atributy získá web server v proměnných,​ které se definují v konfiguračním souboru ''​attribute-map.xml''​. Například níže uvedené mapování zajistí, že proměnné obsahující [[cs:​tech:​attributes:​givenname|křestní jméno]] a [[cs:​tech:​attributes:​sn|příjmení]] (v SAML2 kódování),​ budou dostupné v proměnných //​[[cs:​tech:​attributes:​givenname]]//​ a //​[[cs:​tech:​attributes:​sn]]//​.
  
 <code xml> <code xml>
-# SAML1 
-<​Attribute name="​urn:​mace:​dir:​attribute-def:​givenName"​ id="​givenName"/>​ 
-<​Attribute name="​urn:​mace:​dir:​attribute-def:​sn"​ id="​sn"/>​ 
- 
 # SAML2 # SAML2
 <​Attribute name="​urn:​oid:​2.5.4.42"​ id="​givenName"/>​ <​Attribute name="​urn:​oid:​2.5.4.42"​ id="​givenName"/>​
Řádek 273: Řádek 307:
 ==== REMOTE_USER ==== ==== REMOTE_USER ====
  
-V proměnné ''​REMOTE_USER''​ bude po přihlášení uživatele uloženo jeho uživatelské jméno. V konfiguračním souboru ​(''​shibboleth2.xml''​lze nadefinovat mezerou oddělený seznam atributů, z nichž se Shibboleth SP pokusí uživatelské jméno získat. První proměnná (ve výchozím nastavení je: //​eppn ​persistent-id targeted-id//), která bude obsahovat nějakou hodnotu, se použije a uloží se do proměnné ''​REMOTE_USER'':​+V proměnné ''​REMOTE_USER''​ bude po přihlášení uživatele uloženo jeho uživatelské jméno. V konfiguračním souboru ''​shibboleth2.xml''​ lze v atributu ''​REMOTE_USER''​ u elementu ''<​ApplicationDefaults>'' ​nadefinovat mezerou oddělený seznam atributů, z nichž se Shibboleth SP pokusí uživatelské jméno získat. První proměnná (ve výchozím nastavení je: //​eppn ​subject-id pairwise-id persistent-id//), která bude obsahovat nějakou hodnotu, se použije a uloží se do proměnné ''​REMOTE_USER'':​
  
 <code xml> <code xml>
-<​ApplicationDefaults entityID="​https://​attributes.eduid.cz/shibboleth+<​ApplicationDefaults entityID="​https://​sp.example.org/​shibboleth"​ 
-    metadataAttributePrefix="​md_+    REMOTE_USER="​eppn ​subject-id pairwise-id persistent-id">​
-    REMOTE_USER="​eppn ​persistent-id targeted-id">​+
 </​code>​ </​code>​
  
Řádek 286: Řádek 319:
  
 <code xml> <code xml>
-<​ApplicationDefaults entityID="​https://​attributes.eduid.cz/shibboleth+<​ApplicationDefaults entityID="​https://​sp.example.org/​shibboleth"​ 
-    metadataAttributePrefix="​md_+    REMOTE_USER="​uniqueId eppn subject-id pairwise-id persistent-id"
-    REMOTE_USER="​uniqueId eppn persistent-id targeted-id">+
 </​code>​ </​code>​
  
-V takovém případě je ale ještě potřeba zajistit mapování atributu ​eduPersonUniqueId ​na proměnnou //​uniqueId//​ v Shibboleth SP. To se nastavuje v konfiguračním souboru ''​attribute-map.xml'':​+V takovém případě je ale ještě potřeba zajistit mapování atributu ​[[cs:​tech:​attributes:​edupersonuniqueid]] ​na proměnnou //​uniqueId//​ v Shibboleth SP. To se nastavuje v konfiguračním souboru ''​attribute-map.xml'':​
  
 <code xml> <code xml>
Řádek 301: Řádek 333:
 ==== Přístup po přihlášení ==== ==== Přístup po přihlášení ====
  
-V níže uvedeném příkladu si pomocí Shibbolethu zpřístupníme adresář (''/​shibbloleth''​) ve webovém serveru Apache. Podle konfigurace v souboru ''/​etc/​shibboleth/​shibboleth2.xml''​ budeme následně při přístupu k danému adresáři přesměrování na WAYF anebo na konkrétní IdP, vůči kterému budou moci uživatelé provést své přihlášení.+V níže uvedeném příkladu si pomocí Shibbolethu zpřístupníme adresář (''/​shibbloleth''​) ve webovém serveru Apache. Podle konfigurace v souboru ''/​etc/​shibboleth/​shibboleth2.xml''​ budeme následně při přístupu k danému adresáři přesměrování na WAYF/DS anebo na konkrétní IdP, vůči kterému budou moci uživatelé provést své přihlášení.
  
 <code apache> <code apache>
Řádek 311: Řádek 343:
 </​code>​ </​code>​
  
-Aby výše uvedená konfigurace byla funkční, je potřeba v HTTP serveru Apache ​aktivovat ​modul pro Shibboleth.+Aby výše uvedená konfigurace byla funkční, je potřeba, aby byl v HTTP serveru Apache ​aktivován ​modul pro Shibboleth. ​Ten se aktivuje automaticky po instalaci, v případě, že by však aktivní nebyl je možné ho aktivovat ručně:
  
 <code bash> <code bash>
Řádek 318: Řádek 350:
 </​code>​ </​code>​
  
-Po aktivaci modulu ​je nutné restartovat Apache, aby si načetl nejen nově povolený modul, ale také aby si přečetl novou konfiguraci s přístupem k adresáři ''/​shibboleth''​.+Nyní je nutné restartovat Apache, aby si načetl nejen nově povolený modul, pokud jste ho museli aktivovat sami ručně, ale také aby si přečetl novou konfiguraci s přístupem k adresáři ''/​shibboleth''​.
  
 <code bash> <code bash>
 # Restartování Apache pro načtení všech povolených modulů # Restartování Apache pro načtení všech povolených modulů
-service apache2 ​restart+systemctl ​restart ​apache2
 </​code>​ </​code>​
  
Řádek 337: Řádek 369:
 </​code>​ </​code>​
  
-Bližší možnosti nastavení jsou k dispozici na oficiálních stránkách Shibbolethu ([[https://​wiki.shibboleth.net/​confluence/​display/​SHIB2/NativeSPApacheConfig|NativeSPApacheConfig]], [[https://​wiki.shibboleth.net/​confluence/​display/​SHIB2/NativeSPhtaccess|NativeSPhtaccess]]).+Bližší možnosti nastavení jsou k dispozici na oficiálních stránkách Shibbolethu ([[https://​wiki.shibboleth.net/​confluence/​display/​SP3/Apache|Apache]], [[https://​wiki.shibboleth.net/​confluence/​display/​SP3/htaccess|htaccess]]).
  
Poslední úprava:: 2022/11/28 16:01