HREF metadata specifikáció
Tartalomjegyzék
[elrejtés]Metaadat specifikáció
![]() |
FIGYELEM!
A specifikáció kidolgozása folyamatban van, lényeges változások is belekerülhetnek figyelmeztetés nélkül. Amíg ez a figyelmeztetés itt szerepel, addig munkaverziónak tekintendő! |
A föderációs metaadat specifikáció célja, hogy a föderációban részt vevő intézmények illetve entitások technikai, bizalmi és adminisztratív adatait egy helyre gyűjtse. A metaadatok formátuma megfelel a SAML2 metaadat szabványnak.
Metaadatban tárolt információk
- Bizalom a metaadatban
- a metaadat integritásvédelmét és hitelességét egy digitális aláírás biztosítja.
- a metaadat visszavonhatóságát a lejárati idő (
validUntil
) biztosítja, ami jelenleg 3 nap. - az egyes rendszerek gyorstárazhatják a metaadatot, de maximum a benne megjelölt ideig (
cacheDuration
). - az aláírási procedúrát a #Metaadat_aláírásának_módja fejezet írja le.
- Tanúsítványok
- az entitások által használt tanúsítvánnyal kapcsolatban a föderációs metaadat-specifikáció a lejárati időn kívül nem tesz különleges megkötést, sőt: ajánlott az ún. self-signed tanúsítvány használata
- További információk
- minden szöveges mezőt legalább két nyelven: magyarul és angolul ki kell tölteni
- kötelezően kitöltendőek az intézményi, adminisztratív információk (
Organization
illetveContactPerson
elemek) - ajánlott megadni egy helpdesk URL-r, ahova hiba esetén a felhasználók fordulhatnak (
errorURL
attribútum) - SP-k esetén további kötelező elemek
-
AttributeConsumingService
, ami megadja a kért attribútumokat-
RequestedAttributes
- itt az attribútum informális neve is szerepeljen -
ServiceName
,ServiceDescription
az SP szolgáltatás neve és leírása
-
- a szolgáltatás elérhetősége, amin a szolgáltatás bemutatkozik (extension)
- adatkezelési szabályzatra mutató URL (extension)
-
- IdP-k esetén
- a scope csak az adott intézmény kezelésében levő domain név lehet (Shibboleth extension)
- lehetőség van további adatok megadására is
- logó
- gps koordináták, IP cím tartomány
- különböző tagek, például a szolgáltatás publikus-e, vagy épp bevezetés alatt áll-e
Metaadat kiterjesztések használata
Ezen kiegészítő adatok tárolására az internet2 szabványtervezetet készít, ennek a sémának a jelenlegi verziója megtalálható ezen a linken (odt formátumban).
A kiegészítő séma névtere: urn:oasis:names:tc:SAML:2.0:metadata:ui
. Az alábbi táblázatban ezen névtérben definiált legfontosabb elemeket foglaljuk össze:
element név | szemantika | értékekre vonatkozó megkötések |
---|---|---|
GeolocationHint | szélesség és hosszúság érték, a + előjel az északi szélességet illetve keleti hosszúságot jelöli | 47.47359,19.052891 |
InformationURL | az entitásról további információkat (pl. helpdesk) szolgáltató oldal. | |
PrivacyStatementURL | Az SP adatvédelmi nyilatkozátnak elérhetősége (URL) | Engedélyezett formátumok: HTML, PDF |
Logo | Az IdP/SP logójának elérhetősége | Formátummal kapcsolatban lásd #Logo |
IPHint | (Csak az IdP-knél) az intézmény hálózati tartománya(i). IdP felderítés esetén előválasztás lehetséges ennek alapján. | CIDR, több érték is megadható |
DomainHint | (Csak az IdP-knél) az intézmény által felügyelt domain név. IdP felderítés esetén előválasztás lehetséges ennek alapján. | Több érték is megadható |
Entity tagek
A metaadatban tárolt entitásokhoz kapcsolódó ún. 'tagek' tárolását a urn:geant:niif.hu:eduid.hu:entity-attributes:tags
névtérben elhelyezkedő XML elementekkel valósítjuk meg. Ez a koncepció megegyezik a UKFederation által használt 'label' kiterjesztéssel.
Az általánosan használt tagek a következők:
-
<Public xmlns="urn:geant:niif.hu:eduid.hu:entity-attributes:tags" />
- publikusan használható SP -
<EduGAIN xmlns="urn:geant:niif.hu:eduid.hu:entity-attributes:tags" />
- eduGAIN konföderációban használható IdP / SP -
<Testing xmlns="urn:geant:niif.hu:eduid.hu:entity-attributes:tags" />
- tesztelés alatt álló IdP / SP
Logo
- formátum: URL egy transzparens hátterű PNG, vagy transzparens hátterű GIF képre
- méretezés
- javasolt oldalarány 1:1 vagy 16:9
- maximális méret 200x200px
- ajánlott egy 16x16px-es verziót is megadni
- attribútumok
-
xml:lang
: lokalizációs információ -
href
: opcionális link -
height
: opcionális magasság érték pixelben -
width
: opcionális szélesség érték pixelben
-
Egy IdP példa
<EntityDescriptor entityID="https://idp.niif.hu/shibboleth" xmlns:mdui="urn:oasis:names:tc:SAML:2.0:metadata:ui"> <IDPSSODescriptor protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol urn:oasis:names:tc:SAML:1.1:protocol urn:mace:shibboleth:1.0"> <Extensions> <shibmd:Scope>niif.hu</shibmd:Scope> <mdui:GeolocationHint>47.518356,19.055437</mdui:GeolocationHint> <mdui:DomainHint>niif.hu</mdui:DomainHint> <mdui:DomainHint>iif.hu</mdui:DomainHint> <Testing xmlns="urn:geant:niif.hu:eduid.hu:entity-attributes:tags" /> </Extensions> <KeyDescriptor use="signing"> <ds:KeyInfo> <ds:X509Data> <ds:X509Certificate>...</ds:X509Certificate> </ds:X509Data> </ds:KeyInfo> </KeyDescriptor> </IDPSSODescriptor> <ContactPerson contactType="technical"> <SurName>NIIF AAI</SurName> <EmailAddress>aai@niif.hu</EmailAddress> </ContactPerson> <ContactPerson contactType="support"> <SurName>NIIF AAI</SurName> <EmailAddress>aai@niif.hu</EmailAddress> </ContactPerson> <ContactPerson contactType="administrative"> <SurName>NIIF AAI</SurName> <EmailAddress>aai@niif.hu</EmailAddress> </ContactPerson> </EntityDescriptor>
Egy SP példa
<EntityDescriptor entityID="https://rr.aai.niif.hu/shibboleth" xmlns:mdui="urn:oasis:names:tc:SAML:2.0:metadata:ui"> <SPSSODescriptor protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol urn:oasis:names:tc:SAML:1.1:protocol"> <Extensions> <mdui:PrivacyStatementURL>https://rr.aai.niif.hu/privacy-policy</mdui:PrivacyStatementURL> <mdui:InformationURL>https://rr.aai.niif.hu/about</mdui:InformationURL> <Public xmlns="urn:geant:niif.hu:eduid.hu:entity-attributes:tags" /> </Extensions> <KeyDescriptor use="signing"> <ds:KeyInfo> <ds:X509Data> <ds:X509Certificate>...</ds:X509Certificate> </ds:X509Data> </ds:KeyInfo> </KeyDescriptor> <KeyDescriptor use="encryption"> <ds:KeyInfo> <ds:X509Data> <ds:X509Certificate>...</ds:X509Certificate> </ds:X509Data> </ds:KeyInfo> </KeyDescriptor> <AttributeConsumingService index="1"> <ServiceName xml:lang="hu">HREF Resource Registry</ServiceName> <ServiceName xml:lang="en">HREF Resource Registry</ServiceName> <ServiceDescription xml:lang="hu">Resource Registry - a föderáció adminisztrációs alkalmazása http://rr.aai.niif.hu/</ServiceDescription> <ServiceDescription xml:lang="en">Resource Registry - federation administration tool http://rr.aai.niif.hu/</ServiceDescription> <RequestedAttribute FriendlyName="mail" Name="urn:oid:0.9.2342.19200300.100.1.3" isRequired="true"/> <RequestedAttribute FriendlyName="surname" Name="urn:oid:2.5.4.4" isRequired="true"/> <RequestedAttribute FriendlyName="givenName" Name="urn:oid:2.5.4.42" isRequired="true"/> <RequestedAttribute FriendlyName="eduPersonPrincipalName" Name="urn:oid:1.3.6.1.4.1.5923.1.1.1.6" isRequired="true"/> <RequestedAttribute FriendlyName="schacHomeOrganizationType" Name="urn:oid:1.3.6.1.4.1.25178.1.2.10" isRequired="true"/> <RequestedAttribute FriendlyName="eduPersonScopedAffiliation" Name="urn:oid:1.3.6.1.4.1.5923.1.1.1.9" isRequired="true"/> </AttributeConsumingService> </SPSSODescriptor> <Organization> <OrganizationName xml:lang="hu">NIIF - Nemzeti Információs Infrastruktúra Fejlesztési Intézet</OrganizationName> <OrganizationName xml:lang="en">NIIF Institute - National Information Infrastructure Development</OrganizationName> <OrganizationDisplayName xml:lang="hu">NIIF - Nemzeti Információs Infrastruktúra Fejlesztési Intézet</OrganizationDisplayName> <OrganizationDisplayName xml:lang="en">NIIF Institute - National Information Infrastructure Development</OrganizationDisplayName> <OrganizationURL xml:lang="hu">http://www.niif.hu</OrganizationURL> <OrganizationURL xml:lang="en">http://www.niif.hu/en</OrganizationURL> </Organization> <ContactPerson contactType="administrative"> <SurName>NIIF AAI</SurName> <EmailAddress>aai@niif.hu</EmailAddress> </ContactPerson> <ContactPerson contactType="technical"> <SurName>NIIF AAI</SurName> <EmailAddress>aai@niif.hu</EmailAddress> </ContactPerson> <ContactPerson contactType="support"> <SurName>NIIF AAI</SurName> <EmailAddress>aai@niif.hu</EmailAddress> </ContactPerson> </EntityDescriptor>
Metaadat aláírásának módja
HREF (régi)
Aláíró kulcs és tanúsítványok
- Az aláíró kulcs nem titkosított, az aláírás on-line történik.
- A tanúsítványt az NIIF CA írta alá, de nem használatos PKI ellenőrzésre.
- A metadata aláíró tanúsítvány jelenleg a https://idp.niif.hu/href_signer.crt címen érhető el.
Aláírások ütemezése
- Az aláírást egy óránként, feltétel nélkül lefutó szkript végzi.
eduID-HREF (új, tervezett)
Aláíró kulcs és tanúsítványok
- Az aláíró kulcsot szoftver tokenben - esetleg smartcardon -, jelszóval védve tároljuk.
- Az aláírás on-line történik, a jelszót az aláíró szoftver indításakor az AAI adminisztrátor adja meg, a jelszó nem kerül tárolásra az aláírást végző rendszeren (sem másutt).
- NIIF CA által aláírt tanúsítvány, a teljes lánc beágyazva az aláírásba.
- PKI ellenőrzés lehetősége.
Aláírási folyamat
Az alábbi aláírási folyamatot az idp1 illetve idp2 gépek végzik, de egyszerre csak az egyik, szerepük kézi konfigurálással megfordítható.
- Aláíratlan metaadat frissítése
- Az aláíratlan metaadat a https://rr.aai.niif.hu oldalról ütemezetten (5 perc) letöltésre kerül. A letöltés során az rr.aai.niif.hu tanúsítványát explicit módon ellenőrzni kell.
- A letöltött metaadat formai ellenőrzése.
- Az ellenőrzött metaadat egy verziókövető rendszerbe kerül.
- Metaadat aláírás
- Az aláíró szoftver rendszeresen (5 percenként) ellenőrzi az aláíratlan metaadat repositoryt, és változás esetén új aláírt metaadatot készít.
- Amennyiben nincs változás, fix időközönként új aláírt metaadat készül (8 óránként).
- Aláírt metaadat kezelése
- Az aláírási folyamat végén az aláíró IdP node az aláírt metaadatot a másik szerverre átmozgatja.
- Az aláírt metaadat a https://metadata.eduid.hu/metadata.xml virtualizált URL-en érhető el, amelyet mindkét szerver képes kiszolgálni.