You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 6 Next »

 

Seuraavassa on esitetty Haka-resurssirekisterissä suoritettavat toimenpiteet, joilla Hakaan rekisteröidyn IdP:n ylläpitäjä saa IdP:nsä näkymään eduGAIN:iin.

  1. Merkitse IdP Basic Information -välilehdellä federaatiot, joihin haluat metadatasi julkaistavan (tässä: eduGAINiin).
  2. Välilehdellä 'Contact Information' oleva yhteyshenkilön sähköpostioitteen tulisi olla rooliin perustuva (esim. techadmin@..) eikä henkilökohtainen.
  3. 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:
    1. Displayname englanniksi ja itse palvelun kielellä.
    2. Description englanniksi ja itse palvelun kielellä.
  4. 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.

Esimerkki IdP-palvelimen konfiguroinnista (Shibboleth)

Esimerkki näyttää suuntaa kuinka voit ottaa käyttöön Resurssirekisterin luoman IdP-kohtaisen metadata-tiedoston Haka-metadatan rinnalle:

 

Konfigurointiesimerkit (Shibboleth 2), shibboleth2.xml
.
.
.
<!-- Haka -->
<metadata:MetadataProvider id="URLMD" 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 -->
<metadata:MetadataProvider id="URLMDEdugain" xsi:type="FileBackedHTTPMetadataProvider" xmlns="urn:mace:shibboleth:2.0:metadata"  maxRefreshDelay="PT2H"
    metadataURL="https://haka.funet.fi/edugain-nightly/gen-edugain/idp-5-metadata-eduGain.xml"
    backingFile="/path/to/backup/location/edugain-metadata.xml" requireValidMetadata="false">
    <metadata:MetadataFilter xsi:type="SignatureValidation" trustEngineRef="eduGAIN-trustEngine" />
</metadata:MetadataProvider>
.
.
.
<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>

<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>
.
.
.



<SessionInitiator type="Chaining" Location="/kalmar" isDefault="false"
   id="kalmar" relayState="cookie">
  <SessionInitiator type="SAML2" defaultACSIndex="1" acsByIndex="false" 
    template="bindingTemplate.html"/>
  <SessionInitiator type="SAMLDS" 
    URL="https://kalmar.feide.no/simplesaml/module.php/discopower/disco.php" />
</SessionInitiator>

<!-- Tuotantometadata -->
<MetadataProvider type="XML" 
  uri="https://kalmar2.org/simplesaml/module.php/aggregator/?id=kalmarcentral&amp;
      set=saml2&amp;exclude=finland"
  backingFilePath="kalmar-metadata.xml" reloadInterval="7200">
  <SignatureMetadataFilter certificate="kalmar-metadata-signing.crt.pem"/>
</MetadataProvider>

<!-- Testimetadata-->
<!--
<MetadataProvider type="XML" 
  uri="https://kalmar2.org/simplesaml/module.php/aggregator/?id=kalmarcentraltest"
  backingFilePath="kalmar-test-metadata.xml" reloadInterval="7200">
</MetadataProvider>
-->

 

 

 

 

  • No labels