Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
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:attributes [2020/03/24 14:10] jan.oppolzer@cesnet.cz [TCS atributy] |
cs:tech:attributes [2020/03/24 15:08] jan.oppolzer@cesnet.cz [Doporučení] |
||
---|---|---|---|
Řádek 3: | Řádek 3: | ||
Názvy atributů využívaných u IdP a SP se liší od názvů použitých v SAML komunikaci. Znamená to, že na každé straně je potřeba definovat vhodné mapovaní. Toto rozdělení zvyšuje interoperabilitu různých součástí federace, které můžou mít rozdílné názvy pro stejné atributy. | Názvy atributů využívaných u IdP a SP se liší od názvů použitých v SAML komunikaci. Znamená to, že na každé straně je potřeba definovat vhodné mapovaní. Toto rozdělení zvyšuje interoperabilitu různých součástí federace, které můžou mít rozdílné názvy pro stejné atributy. | ||
- | Existuje několik způsobů kodování atributu v SAML komunikaci. Pokaždé jde o [[http://en.wikipedia.org/wiki/Uniform_Resource_Identifier|URI]]: | + | Existuje několik způsobů kodování atributu v SAML komunikaci. Pokaždé jde o [[https://en.wikipedia.org/wiki/Uniform_Resource_Identifier|URI]]: |
- | * **urn:oid** - pokud jde o atribut z LDAP třídy, nejvhodnější je zápis pomocí OID, např. atribut mail se da zapsat jako //urn:oid:0.9.2342.19200300.100.1.3// | + | * **urn:oid** -- pokud jde o atribut z LDAP třídy, nejvhodnější je zápis pomocí OID, |
- | * **urn:mace** - v ostatních případech je možné použít identifikátor z namespace //urn:mace// a to buď ze standardizovaného podstromu [[http://middleware.internet2.edu/urn-mace/urn-mace-dir-attribute-def.html|urn:mace:dir:attribute-def]], tak i z vlastního podstromu, který ale musí být explicitně přidělen organizaci | + | * **urn:mace** -- v ostatních případech je možné použít identifikátor z namespace //urn:mace// a to buď ze standardizovaného podstromu, nebo z vlastního podstromu explicitně přiděleného organizaci, |
- | * **URL** - nejvhodnější způsob pojmenování vlastních atributů je použití URL, kde hostname je z domény patřící dané organizaci, např. //https://cesnet.cz/attribute-def/customAttr // | + | * **URL** -- nejvhodnější způsob pojmenování vlastních atributů je pomocí URL při použití domény patřící dané organizaci. |
- | Podrobné informace o konvencích v pojmenovávání atributů najdete na [[https://wiki.shibboleth.net/confluence/display/SHIB2/SAMLAttributeNaming|Shibboleth Wiki]]. | + | Podrobné informace o konvencích v pojmenovávání atributů najdete na [[https://wiki.shibboleth.net/confluence/display/CONCEPT/SAMLAttributeNaming|Shibboleth Wiki]]. |
- | ===== Povinné atributy ===== | + | ===== Objektová třída eduPerson ===== |
- | + | ||
- | Každý poskytovatel identit musí být schopen povinné atributy poskytovat. Jedná se o následující: | + | |
- | * **[[cs:tech:attributes:cn]]** | + | Federativní uspořádání //AAI// (Authentication and Authorization Infrastructure) si vyžádalo vznik společné sady atributů sloužících k autentizaci a autorizaci uživatele. Sdružení [[https://www.internet2.edu|Internet2]] proto vyvinulo pro potřebu vzdělávacích institucí objektovou třídu //eduPerson//. Tato třída představuje rozšíření tříd //person//, //organizationalPerson// a //inetOrgPerson//. |
- | * //Definice:// celé jméno včetně diakritiky a bez akademických titulů v pořadí křestní jméno (jména) a příjmení | + | |
- | * //Příklad:// Kryštof Šáteček | + | |
- | * **[[cs:tech:attributes:edupersonprincipalname]]** | + | * [[https://wiki.refeds.org/display/STAN/eduPerson|Domovská stránka eduPerson]] |
- | * //Definice:// jednoznačný identifikátor osoby v rámci federace | + | * [[http://software.internet2.edu/eduperson/internet2-mace-dir-eduperson-201602.html|Specifikace eduPerson]] |
- | * //Příklad:// satecek@example.org | + | * [[https://wiki.refeds.org/display/STAN/eduPerson+LDIF+Files|LDIF data]] |
- | * **[[cs:tech:attributes:edupersonscopedaffiliation]]** | + | Cílem této sekce webu je stručně popsat význam jednotlivých atributů a jejich hodnot tak, jak by měly být používány v českém akademickém prostředí. Jedná se o dokument vycházející z aktuálních požadavků. V budoucnu se bude s největší pravděpodobností dále vyvíjet na základě nových potřeb a diskuze v rámci komunity eduID.cz. |
- | * //Definice:// vztah(y) osoby k organizaci | + | |
- | * //Příklad:// member@example.org, employee@example.org, staff@example.org | + | |
- | * **[[cs:tech:attributes:edupersontargetedid]]** | + | Schéma //eduPerson// je implementováno jako objektová třída v adresářové struktuře LDAP. To však neznamená, že všechny atributy musí být nutně uloženy v LDAP serveru. Obzvláště u atributů //eduPersonScopedAffiliation// a //eduPersonPrincipalName// se vzhledem k jejich povaze nabízí možnost jejich generování při odpovědi poskytovatele identit (IdP) na autorizační dotaz. |
- | * //Definice:// persistentní náhodně vygenerovaný řetězec nenesoucí žádnou informaci o osobě | + | |
- | * //Příklad:// <nowiki>https://idp.example.org/idp/shibboleth!https://sp.example.org/shibboleth!DMSjKwRge9YmZlc3leBnl0npqBs=</nowiki> | + | |
- | * **[[cs:tech:attributes:edupersonuniqueid]]** | + | ===== Povinné atributy ===== |
- | * //Definice:// jednoznačný, dlouhotrvající, neměnný a nikdy nerecyklovatelný identifikátor osoby v rámci federace | + | |
- | * //Příklad:// 89645@example.org | + | Každý poskytovatel identit musí být schopen povinné atributy poskytovat. Jedná se o následující: |
- | * //Poznámka:// souvisí s atributem "unstructuredName" a generuje se jako hodnota_unstructuredName@example.org | + | |
- | + | ||
- | * **[[cs:tech:attributes:givenName]]** | + | |
- | * //Definice:// celé křestní jméno (případně všechna křestní jména) včetně diakritiky | + | |
- | * //Příklad:// Kryštof | + | |
- | + | ||
- | * **[[cs:tech:attributes:mail]]** | + | |
- | * //Definice:// __ověřená__ adresa elektronické pošty uživatele | + | |
- | * //Příklad:// krystof.satecek@example.org | + | |
- | + | ||
- | * **[[cs:tech:attributes:sn]]** | + | |
- | * //Definice:// celé příjmení (případně všechna příjmení) včetně diakritiky | + | |
- | * //Příklad:// Šáteček | + | |
- | * **[[cs:tech:attributes:unstructuredname]]** | + | * [[cs:tech:attributes:cn]] |
- | * //Definice:// unikátní identifikátor uživatele, který se nikdy nezmění a nikdy nepoužije pro jiného uživatele | + | * [[cs:tech:attributes:edupersonaffiliation]] |
- | * //Příklad:// 89645 | + | * [[cs:tech:attributes:edupersonprincipalname]] |
- | * //Poznámka:// souvisí s eduPersonUniqueId, který ho využívá | + | * [[cs:tech:attributes:edupersonscopedaffiliation]] |
+ | * [[cs:tech:attributes:edupersontargetedid]] | ||
+ | * [[cs:tech:attributes:edupersonuniqueid]] | ||
+ | * [[cs:tech:attributes:givenname]] | ||
+ | * [[cs:tech:attributes:mail]] | ||
+ | * [[cs:tech:attributes:sn]] | ||
+ | * [[cs:tech:attributes:unstructuredname]] | ||
===== Doporučené atributy ===== | ===== Doporučené atributy ===== | ||
- | Všichni poskytovatele identit, kteří používají regulované atributy, je používají pouze k níže uvedenému účelu. | + | Všichni poskytovatele identit, kteří používají regulované atributy, je používají pouze k níže uvedenému účelu. |
- | * **[[cs:tech:attributes:o]]** | + | * [[cs:tech:attributes:displayname]] |
- | * //Definice:// označení organizace | + | * [[cs:tech:attributes:edupersonentitlement]] |
- | * //Příklad:// CESNET, z. s. p. o. | + | * [[cs:tech:attributes:o]] |
- | + | * [[cs:tech:attributes:ou]] | |
- | * **[[cs:tech:attributes:ou]]** | + | |
- | * //Definice:// označení organizační složky v rámci organizace | + | |
- | * //Příklad:// Oddělení síťové identity | + | |
- | + | ||
- | Výše uvedené atributy slouží pro prezentační účely a nejsou vhodné pro autorizaci. | + | |
- | + | ||
- | * **[[cs:tech:attributes:edupersonentitlement]]** | + | |
- | * //Definice:// řízení přístupu k vyjmenovaným službám | + | |
- | * //Příklad:// urn:mace:terena.org:tcs:escience-user | + | |
- | + | ||
- | * **[[cs:tech:attributes:czedupersonstudysubject]]** | + | |
- | * //Definice:// kód studijního oboru dle [[https://is.cuni.cz/studium/ciselniky/index.php?STACK_SAVE_modul=ciselniky&func_count=0&RETURN_FROM_SP=0&ORIGINAL_SP_VALUE=0&STACK_SAVE_return=akce_cis_v_vyber_kf_table&menu=cis_v_vyber_kf&KEY=Az1&id_ciselnik=201&menu=cis_v_data_kf&order_reset=1|číselníku MŠMT]] | + | |
- | * //Příklad:// 2601T017 (kód pro studijní obor //Bezdrátové komunikace//) | + | |
- | + | ||
- | * **[[cs:tech:attributes:czedupersonstudyprogramme]]** | + | |
- | * //Definice:// kód studijního programu dle [[https://is.cuni.cz/studium/ciselniky/index.php?STACK_SAVE_modul=ciselniky&func_count=0&RETURN_FROM_SP=0&ORIGINAL_SP_VALUE=0&STACK_SAVE_return=akce_cis_v_vyber_kf_table&menu=cis_v_vyber_kf&KEY=Az1&id_ciselnik=200&menu=cis_v_data_kf&order_reset=1|číselníku MŠMT]] | + | |
- | * //Příklad:// B2643 (kód pro studijní program //Elektrotechnika, elektronika, komunikační a řídicí technika//) | + | |
- | + | ||
- | * **[[cs:tech:attributes:edupersonorgunitdn]]** | + | |
- | * //Definice:// DN popisující organizační jednotku, k níž má osoba formální vztah | + | |
- | * //Příklad:// ou=k135,o=fel,dc=cvut,dc=cz | + | |
===== TCS atributy ===== | ===== TCS atributy ===== | ||
- | Atributy potřebné pro službu [[https://tcs.cesnet.cz|TCS]] jsou uvedeny na [[https://tcs.cesnet.cz|samostatné stránce]]. | + | Atributy potřebné pro službu [[https://tcs.cesnet.cz|TCS]] jsou uvedeny na [[https://pki.cesnet.cz/cs/tcs-admin.html#technicke_predpoklady|samostatné stránce]]. |
===== Lokální atributy ===== | ===== Lokální atributy ===== | ||
Řádek 104: | Řádek 68: | ||
Pro autorizaci je vhodné používat zejména atribut //eduPersonScopedAffiliation//, který vystihuje | Pro autorizaci je vhodné používat zejména atribut //eduPersonScopedAffiliation//, který vystihuje | ||
- | vztah uživatele k organizaci, např. memberexample.org. Naopak je nevhodné používat k | + | vztah uživatele k organizaci, např. ''member@example.org''. Naopak je nevhodné používat k |
autorizaci identifikaci IdP. | autorizaci identifikaci IdP. | ||
Řádek 121: | Řádek 85: | ||
zajištuje na jedné straně soukromí (není znám jeho login a tedy identifikace) a současně je pro konkrétní | zajištuje na jedné straně soukromí (není znám jeho login a tedy identifikace) a současně je pro konkrétní | ||
SP vždy stejně identifikován a SP tak může poskytovat službu uchovávání dat, ať už skutečných dat uživatele | SP vždy stejně identifikován a SP tak může poskytovat službu uchovávání dat, ať už skutečných dat uživatele | ||
- | anebo jen nějaké jeho nastavení. Nezbytná implementace není, u řady služeb bude ale vyžadováno uvolňování EPPN. | + | anebo jen nějaké jeho nastavení. Nezbytná implementace není, u řady služeb bude ale vyžadováno uvolňování //eduPersonPrincipalName// nebo //eduPersonUniqueId//. |