„MDX” változatai közötti eltérés

Innen: KIFÜ Wiki
(Fontos tudnivaló Discovery Service használattal kapcsolatban)
(SimpleSAMLphp: flatfile sor kell)
(7 közbenső módosítás ugyanattól a szerkesztőtől nincs mutatva)
1. sor: 1. sor:
 
Az MDX, azaz MetaDataeXchange protokolt erőforrás optimalizálás céljából találták ki, hogy ne kelljen egyes IdP-knek és SP-knek indokolatlanul nagy XML fájlokat feldolgozniuk és tárolniuk, mikor a felhasználóiknak jó eséllyel a fájlokban tárolt entitások töredékére van csak szükségük. Ezért az egyes entitásokat be lehet úgy állítani, hogy csak akkor töltsék le az adott entitás metaadatát, mikor arra szükség van (az első letöltés után természetesen helyben tároldóik a metaadat a <code>cacheDuration</code>-ben megadott ideig). Az MDX kiszolgáló az alábbi szabvány szerint tudja visszaadni egy-egy entitás metaadatát: <code>http://mdx.eduid.hu/entities/{urlencoded}$entityID</code>, pl: <code>http://mdx.eduid.hu/entities/https%3A%2F%2Fdev.aai.niif.hu%2Fshibboleth</code>
 
Az MDX, azaz MetaDataeXchange protokolt erőforrás optimalizálás céljából találták ki, hogy ne kelljen egyes IdP-knek és SP-knek indokolatlanul nagy XML fájlokat feldolgozniuk és tárolniuk, mikor a felhasználóiknak jó eséllyel a fájlokban tárolt entitások töredékére van csak szükségük. Ezért az egyes entitásokat be lehet úgy állítani, hogy csak akkor töltsék le az adott entitás metaadatát, mikor arra szükség van (az első letöltés után természetesen helyben tároldóik a metaadat a <code>cacheDuration</code>-ben megadott ideig). Az MDX kiszolgáló az alábbi szabvány szerint tudja visszaadni egy-egy entitás metaadatát: <code>http://mdx.eduid.hu/entities/{urlencoded}$entityID</code>, pl: <code>http://mdx.eduid.hu/entities/https%3A%2F%2Fdev.aai.niif.hu%2Fshibboleth</code>
  
== MDX kiszolgálás a HREF-ben ==
+
== Dinamikus metadata kiszolgálás a HREF-ben ==
Két MDX forrást üzemeltetünk:
+
Az MDX kiszolgáló a '''http://mdx.eduid.hu''' alatt szolgáltat, és a ''href'' és az ''edugain'' metadata halmazokat tartalmazza.
 
 
* http://mdx.eduid.hu - ezen keresztül az éles föderációs metadatában és az edugainben szereplő entitások metaadatai kérdezhetők le
 
* http://entities.eduid.hu - ezen keresztül az összes, beleértve a tesztentitásokat is
 
  
 
Mindkét kiszolgáló ugyanazzal a kulccsal írja alá a lekért metaadat-állományt.  
 
Mindkét kiszolgáló ugyanazzal a kulccsal írja alá a lekért metaadat-állományt.  
12. sor: 9. sor:
  
 
=== Fontos tudnivaló Discovery Service használattal kapcsolatban ===
 
=== Fontos tudnivaló Discovery Service használattal kapcsolatban ===
Lévén az MDX-et használó SP-knél nem áll rendelkezésre folyamatosan az összes potenciális IdP listája, így a beépített Discovery Service-ek nem működnek. Ha MDX-et használunk, akkor párhuzamosan valamilyen külső Discvery Service-t kell használnunk. A HREF-ben a https://discovery.eduid.hu a központi Discovery Service.  
+
Lévén az MDX-et használó SP-knél nem áll rendelkezésre folyamatosan az összes potenciális IdP listája, így a beépített Discovery Service-ek nem működnek. Ha MDX-et használunk, akkor valamilyen külső Discvery Service-t kell használnunk. A HREF-ben a https://discovery.eduid.hu a központi Discovery Service.  
  
(De "titkos lehetőségként" maga az MDX kiszolgáló is biztosít Discovery Service felületet, ehhez akár Shibboleth SP-nél, akár simpleSAMLphp SP-nél a konfigurációban az alábbi URL-t kell megadni, mint Discovery Service: http://{mdx,entities}.eduid.hu/role/idp.ds )
+
Emellett maga az MDX kiszolgáló is biztosít Discovery Service felületet, ehhez akár Shibboleth SP-nél, akár simpleSAMLphp SP-nél a konfigurációban az alábbi URL-t kell megadni, mint Discovery Service: https://mdx.eduid.hu/role/idp.ds . Ez a Discovery Service tartalmazza a hazai eduID-ben, valamint az eduGAIN-ben levő összes IdP-t. (És, ellentétben a hagyományos https://discovery.eduid.hu/edugain szolgáltatással, ez tartlamazza a magyar VHO-t is VHO IdP néven.)
  
 
== MDX használata kliens oldalon ==
 
== MDX használata kliens oldalon ==
 
=== SimpleSAMLphp ===
 
=== SimpleSAMLphp ===
  
Az 1.14-es kiadású SimpleSAMLphp-ban lesz benne, mint kiadásban, de a legfrissebb, githubról letölthető változatban már benne van. Ezt kell használnunk, ha szeretnénk, hogy az üzemeltetett SimpleSAMLphp-nk MDX-es metadataforrásból dolgozzon.config/config.php metadatás részében kell elvégezni a beállításokat az alábbi módon:
+
Az 1.14-es kiadástól kezdve a SimpleSAMLphp tartalmazza az dinamikus metadata lekérdezés funkciót, amely mind IdP, mind SP szerepben egységes módon használható. A config/config.php állományban metadata.sources szekcióban kell elhelyezni az alábbi blokkot:
  
 
<source lang="php">
 
<source lang="php">
 
'metadata.sources' => array(
 
'metadata.sources' => array(
 +
    array('type' => 'flatfile'), // ez a *-hosted metadata konfiguráció betöltése miatt szükséges
 
     array(
 
     array(
 
         'type' => 'mdx',
 
         'type' => 'mdx',
29. sor: 27. sor:
 
         'cachelength' => 86400, //opcionális,
 
         'cachelength' => 86400, //opcionális,
 
         'validateFingerprint' => '91:81:AD:2B:F1:C1:4E:47:93:A2:9D:49:34:B7:77:62:4F:2F:98:43' //opcionális     
 
         'validateFingerprint' => '91:81:AD:2B:F1:C1:4E:47:93:A2:9D:49:34:B7:77:62:4F:2F:98:43' //opcionális     
       )
+
       ),
 
),
 
),
 
</source>
 
</source>
 +
 +
 +
A dinamikus és a statikus metadataforrások egyidejű használatára egy példa: [[SimpleSAMLMixedMetadata]]
  
 
=== Shibboleth SP ===
 
=== Shibboleth SP ===
  
* Le kell tölteni a /etc/shibboleth alá az aláíró tanúsítványát innen: http://metadata.eduid.hu/mdx-test-signer-2015.crt
+
* Le kell tölteni a /etc/shibboleth alá az aláíró tanúsítványát innen: http://metadata.eduid.hu/current/mdx-test-signer-2015.crt
 
* Az alábbi blokkot be kell szúrni a <code>/etc/shibboleth/shibboleth2.xml</code> fájlba
 
* Az alábbi blokkot be kell szúrni a <code>/etc/shibboleth/shibboleth2.xml</code> fájlba
  
47. sor: 48. sor:
 
=== Shibboleth IdPv3 ===
 
=== Shibboleth IdPv3 ===
  
* Le kell tölteni a <code>${idp.home}/credentials/</code> alá az aláíró tanúsítványát innen: http://metadata.eduid.hu/mdx-test-signer-2015.crt
+
* Le kell tölteni a <code>${idp.home}/credentials/</code> alá az aláíró tanúsítványát innen: http://metadata.eduid.hu/current/mdx-test-signer-2015.crt
 
* A <code>conf/metadata-providers.xml</code> fájlt kell szerkeszteni az alábbi módon:
 
* A <code>conf/metadata-providers.xml</code> fájlt kell szerkeszteni az alábbi módon:
 
<source lang="xml">
 
<source lang="xml">

A lap 2017. november 28., 10:08-kori változata

Az MDX, azaz MetaDataeXchange protokolt erőforrás optimalizálás céljából találták ki, hogy ne kelljen egyes IdP-knek és SP-knek indokolatlanul nagy XML fájlokat feldolgozniuk és tárolniuk, mikor a felhasználóiknak jó eséllyel a fájlokban tárolt entitások töredékére van csak szükségük. Ezért az egyes entitásokat be lehet úgy állítani, hogy csak akkor töltsék le az adott entitás metaadatát, mikor arra szükség van (az első letöltés után természetesen helyben tároldóik a metaadat a cacheDuration-ben megadott ideig). Az MDX kiszolgáló az alábbi szabvány szerint tudja visszaadni egy-egy entitás metaadatát: http://mdx.eduid.hu/entities/{urlencoded}$entityID, pl: http://mdx.eduid.hu/entities/https%3A%2F%2Fdev.aai.niif.hu%2Fshibboleth

Dinamikus metadata kiszolgálás a HREF-ben

Az MDX kiszolgáló a http://mdx.eduid.hu alatt szolgáltat, és a href és az edugain metadata halmazokat tartalmazza.

Mindkét kiszolgáló ugyanazzal a kulccsal írja alá a lekért metaadat-állományt.

Fontos tudnivaló Discovery Service használattal kapcsolatban

Lévén az MDX-et használó SP-knél nem áll rendelkezésre folyamatosan az összes potenciális IdP listája, így a beépített Discovery Service-ek nem működnek. Ha MDX-et használunk, akkor valamilyen külső Discvery Service-t kell használnunk. A HREF-ben a https://discovery.eduid.hu a központi Discovery Service.

Emellett maga az MDX kiszolgáló is biztosít Discovery Service felületet, ehhez akár Shibboleth SP-nél, akár simpleSAMLphp SP-nél a konfigurációban az alábbi URL-t kell megadni, mint Discovery Service: https://mdx.eduid.hu/role/idp.ds . Ez a Discovery Service tartalmazza a hazai eduID-ben, valamint az eduGAIN-ben levő összes IdP-t. (És, ellentétben a hagyományos https://discovery.eduid.hu/edugain szolgáltatással, ez tartlamazza a magyar VHO-t is VHO IdP néven.)

MDX használata kliens oldalon

SimpleSAMLphp

Az 1.14-es kiadástól kezdve a SimpleSAMLphp tartalmazza az dinamikus metadata lekérdezés funkciót, amely mind IdP, mind SP szerepben egységes módon használható. A config/config.php állományban metadata.sources szekcióban kell elhelyezni az alábbi blokkot:

'metadata.sources' => array(
     array('type' => 'flatfile'), // ez a *-hosted metadata konfiguráció betöltése miatt szükséges
     array(
         'type' => 'mdx',
         'server' => 'http://mdx.eduid.hu',
         'cachedir' => '/var/simplesamlphp/mdx-cache', //opcionális, de ajánlott
         'cachelength' => 86400, //opcionális,
         'validateFingerprint' => '91:81:AD:2B:F1:C1:4E:47:93:A2:9D:49:34:B7:77:62:4F:2F:98:43' //opcionális     
      ),
),


A dinamikus és a statikus metadataforrások egyidejű használatára egy példa: SimpleSAMLMixedMetadata

Shibboleth SP

<MetadataProvider type="Dynamic" ignoreTransport="true">
      <Subst>http://mdx.eduid.hu/entities/$entityID</Subst>
      <MetadataFilter type="Signature" certificate="mdx-test-signer-2015.crt"/>
</MetadataProvider>

Shibboleth IdPv3

<MetadataProvider
     xmlns="urn:mace:shibboleth:2.0:metadata"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="urn:mace:shibboleth:2.0:metadata http://shibboleth.net/schema/idp/shibboleth-metadata.xsd"
     id="dynamicMDQ" xsi:type="DynamicHTTPMetadataProvider">


     <!--
       Require a validUntil XML attribute on the EntityDescriptor element
       and make sure its value is no more than 14 days into the future
     -->
     <MetadataFilter xsi:type="RequiredValidUntil" maxValidityInterval="P14D" />


      <!-- Verify the signature on the metadata file -->
     <MetadataFilter xsi:type="SignatureValidation" requireSignedMetadata="true"
         certificateFile="${idp.home}/credentials/mdx-signer.crt" />
     
     <!-- The MetadataQueryProtocol element specifies the base URL for the query protocol. -->
     <MetadataQueryProtocol>http://mdx.eduid.hu/</MetadataQueryProtocol>
</MetadataProvider>