Seuraavassa on esitetty Haka-resurssirekisterissä suoritettavat toimenpiteet, joilla Hakaan rekisteröidyn IdP:n ylläpitäjä saa IdP:nsä näkymään eduGAIN:iin.
- Merkitse IdP Basic Information -välilehdellä federaatiot, joihin haluat metadatasi julkaistavan (tässä: eduGAINiin).
- Välilehdellä 'Contact Information' oleva yhteyshenkilön sähköpostioitteen tulisi olla rooliin perustuva (esim. techadmin@..) eikä henkilökohtainen.
- Metadata UI elementit tulisi olla täytetty mahdollisimman täydellisesti. Tämä tapahtuu täyttämällä tiedot 'Ui Extensions' -välilehdellä. Erityisen tärkeät elementit ovat:
- Displayname englanniksi ja itse palvelun kielellä.
- Description englanniksi ja itse palvelun kielellä.
- eduGAIN Rules -välilehdellä määrittelet, mihin eduGAIN:ssä mukana oleviin SP-palvelimiin luotat, ja mitä attribuutteja halaut millekin SP:lle luovuttaa.
IdP Trust Rules
eduGAIN Rules-välilehdellä IdP-ylläpitäjä voi määritellä, mihin Service Provider -palvelimiin IdP luottaa (luovuttaa attribuutteja). Määritysten perusteella resurssirekisteri tuottaa IdP-palvelimen tarvitseman SAML-metadatatiedoston.
Määrittely voidaan tehdä kahdella tavalla:
- Basic: IdP luottaa kaikkiin SP:hin, jotka ovat sitoutuneet GÉANT-tietosuojakäytäntöön
- Advanced: IdP-ylläpitäjä määrittelee yksitellen, mihin SP-palvelimiin IdP luottaa
IdP Trust Rules: Basic
Haka-resurssirekisterissä IdP-ylläpitäjä voi yksinkertaisesti konfiguroida IdP:n luottamaan (luovuttamaan attribuutteja) kaikille SP:lle, jotka ovat sitoutuneet GÉANT-tietosuojakäytäntöön (kuva alla). Tällöin resurssirekisteri tuottaa IdP-ylläpitäjälle sekä SAML-metadata- että attribute filter policy -tiedostot, jotka sisältävät mainitut SP-palvelimet.
GÉANT-tietosuojakäytäntö on Tietosuojadirektiivistä johdettu toimintakäytäntö SP:lle, joka sijaitsee EU/ETA-alueella tai Euroopan komission turvalliseksi katsomassa maassa. GÉANT-projektin julkaisema keittokirja auttaa IdP-ylläpitäjää GÉANT-tietosuojakäytäntöön nojaamiseen liittyvissä askeleissa. Keittokirjassa mainittu maksimaalinen attribuuttilista asetetaan alempana esitettävästä Haka-resurssirekisterin "IdP Attribute Rules" -kohdasta.
IdP Trust Rules: Advanced
Basic-tason sääntöjen lisäksi/sijaan IdP-ylläpitäjä voi poimia yksitellen ne SP:t, joihin haluaa luottaa. Advanced-tason säännöt ohittavat aina Basic-tason säännöt, jos sellaisia on tehty. Toimintaperiaate on sama kuin edellä kohdassa "SP:n luottamat Identity Provider -palvelimet".
'Advanced eduGAIN Rules' - välilehden alasvetovalikoissa kotifederaatio ilmaistaan sen Authority-arvon perusteella, mikä taas on osa eduGAIN-metadataa. Vaikka tämä arvo on pakollinen, niin valitettavasti ainakin tällä hetkellä kaikki entityt eivät kerro eduGAIN-metadatassaan kotifederaatiotaan. Haka-resurssirekisteri on niputtanut kyseiset kodittomat 'Homeless'-kotifederaation alle.
IdP Attribute Rules
Sen lisäksi että IdP-ylläpitäjä voi määritellä Entity-, kotifederaatio- tai eduGAIN-tason säännöt niistä SP:stä, joihin IdP-palvelin luottaa, IdP-ylläpitäjä voi myös asettaa perälaudan kullekin SP:lle luovutettavien attribuuttien listalle. Periaattena, on, että attribuutti luovutetaan,
- jos SP pyytää kyseistä attribuuttia (käyttämällä SAML-metadatan md:RequestedAttributes-elementtiä) JA
- jos IdP Attribute Rules sallii kyseisen attribuutin luovuttamisen
Näiden sääntöjen perusteella Haka-resurssirekisteri muodostaa kullekin IdP-palvelimelle attribute filter policy (afp) -tiedoston. Sen perusteella Shibboleth IdP -palvelin päättää, mitä attribuutteja lähetetään kullekin SP:lle.
'eduGAIN Rules' -välilehdellä on toiminto, jolla voi rakentaa sääntöjä attribuuttikohtaisesti. Alla oleva esimerkkikonfiguraatio selventää sääntöjen toimintaa eikä ole sellaisenaan malli tuotantokonfiguraatiolle.
Esimerkki konfiguraatio ilmaisee että "Lähetä attribuutti 'cn' kaikille sitä pyytäville (#0) eduGAIN SP-palvelimille paitsi, jos palvelun kotifederaatio on (#1) Norjan Feide. Norjan federaation palveluiden joukossa (#2) tee kuitenkin poikkeus foodl.org-palvelun osalta ja lähetä sille cn pyydettäessä".
Samoin kuin luottamusta evaluoitaessa, myös attribuuttien kohdalla säännöt evaluoidaan entity-tasolta ylöspäin. Sääntö #2 on voimakkain, koska se koskee yhtä nimenomaista entityä. Toisena tulee Federation-tason sääntö #1 ja viimeisenä eduGAIN-sääntö #0.
Myös IdP voi tarkastella omien sääntöjensä vaikutusta per eduGAIN SP.
Ensimmäinen taulukko kertoo, että foodl.org-niminen SP on sääntöjen perusteella luotettu ja sisällytetty IdP:n saamaan eduGAIN-metadataan. Toisesta taulukosta näet attribuuttisääntöjesi vaikutuksen luovutettaviin attribuutteihin. Haka-resurssirekisteri generoi kerran tunnissa IdP:llesi näiden sääntöjen perusteella metadatan, joka sisältää valitsemasi eduGAIN-SP:t sekä niille afp:n. Jos tiettyä attribuuttia ei sääntöjesi mukaan saa luovuttaa kohteelle, kyseinen attributti kommentoidaan ulos sekä metadatasta että afp:stä.
Tekemäsi muutokset heijastuvat IdP-kohtaiseen eduGAIN-metadataasi noin tunnin viiveellä siitä, kun Haka-operaattori on hyväksynyt ne. IdP:täsi varten räätälöity metadatatiedosto haetaan IdP:n Resurssirekisteri-id:n perusteella osoitteesta http://haka.funet.fi/edugain-nightly/gen-edugain/idp-[id]-metadata-eduGain.xml
Huom. Attribuuttisääntöjen perusteella luodaan myös IdP-kohtainen attribute-filter.xml -tiedosto, joka löytyy osoitteesta http://haka.funet.fi/edugain-nightly/gen-edugain/idp-[id]-afp-eduGain.xml.
IdP-palvelimen eduGAIN downstream metadata ja attribute-filter.xml (Shibboleth)
Taulukossa käytetyn id arvon saat SP/IdP:llesi kirjautumalla Resurssirekisteriin. Resurssirekisteri luo jokaiselle eduGAINiin rekisteröidylle IdP-palvelimelle räätälöidyt tiedostot palvelimelle määritetyjen eduGAIN-sääntöjen pohjalta.
Selitys | URL |
---|---|
IdP-palvelimen metadata | https://haka.funet.fi/edugain-nightly/gen-edugain/idp-[id]-metadata-eduGain.xml |
IdP-palvelimen attribute-filter.xml | https://haka.funet.fi/edugain-nightly/gen-edugain/idp-[id]-afp-eduGain.xml |
eduGAIN metadatan allekirjoitusvarmenne |
Esimerkki IdP-palvelimen konfiguroinnista (Shibboleth)
Esimerkki näyttää suuntaa kuinka voit ottaa käyttöön Resurssirekisterin luoman IdP-kohtaisen metadata-tiedoston Haka-metadatan rinnalle (mukana allekirjoituksen tarkistus):
. . . <!-- Haka MetadataProvider --> <metadata:MetadataProvider id="HAKAMD" xsi:type="FileBackedHTTPMetadataProvider" xmlns="urn:mace:shibboleth:2.0:metadata" maxRefreshDelay="PT2H" metadataURL="https://haka.funet.fi/metadata/haka-metadata.xml" backingFile="/path/to/backup/location/haka-metadata.xml"> <metadata:MetadataFilter xsi:type="SignatureValidation" trustEngineRef="Haka-trustEngine" /> </metadata:MetadataProvider> <!-- eduGAIN MetadataProvider --> <metadata:MetadataProvider id="EDUGAINMD" xsi:type="FileBackedHTTPMetadataProvider" xmlns="urn:mace:shibboleth:2.0:metadata" maxRefreshDelay="PT2H" metadataURL="https://haka.funet.fi/edugain-nightly/gen-edugain/idp-XX-metadata-eduGain.xml" backingFile="/path/to/backup/location/edugain-metadata.xml" requireValidMetadata="false"> <metadata:MetadataFilter xsi:type="SignatureValidation" trustEngineRef="eduGAIN-trustEngine" /> </metadata:MetadataProvider> . . . <!-- Haka TrustEngine --> <security:TrustEngine id="Haka-trustEngine" xsi:type="security:StaticExplicitKeySignature"> <security:Credential id="Haka_metadata_signing" xsi:type="security:X509Filesystem"> <security:Certificate>/path/to/cert/haka-sign-v2.pem</security:Certificate> </security:Credential> </security:TrustEngine> <!-- eduGAIN TrustEngine --> <security:TrustEngine id="eduGAIN-trustEngine" xsi:type="security:StaticExplicitKeySignature"> <security:Credential id="eduGAIN_metadata_signing" xsi:type="security:X509Filesystem"> <security:Certificate>/path/to/cert/haka-edugain-sign.csc.fi.pem</security:Certificate> </security:Credential> </security:TrustEngine> . . .