SimpleSAMLMixedMetadata
Ez a vázlatos leírás egy olyan SimpleSAMLphp IdP (vagy SP) konfigurálásában kíván segítséget nyújtani, amely az alábbi metaadatforrásokat használja:
- kézzel szerkesztett saml20-sp-remote (vagy saml20-idp-remote) például Google Apps vagy Office365 használatához;
- az intézményi metadata halmazt, azaz a belső SP-k (esetleg teszt IdP-k) halmazát;
- a magyar eduID.hu föderációban levő entitásokat;
- és az eduGAIN-ben levő entitásokat.
Ez utóbbi kettőt a föderáció MDX szolgáltatása biztosítja leghatékonyabban.
Metaadatforrások beállítása
A config/config.php állományban cseréljük le a metadata.sources részt az alábbira:
'metadata.sources' => array(
array('type' => 'flatfile'),
array('type' => 'flatfile','directory' => 'metadata/metarefresh'),
array('type' => 'mdx', 'server' => 'http://mdx.eduid.hu', 'cachedir' => '/var/simplesamlphp/mdx-cache', 'cachelength' => 7200,
'validateFingerprint' => '91:81:AD:2B:F1:C1:4E:47:93:A2:9D:49:34:B7:77:62:4F:2F:98:43'
),
),
Az MDX cache könyvtárat és a statikus metaadatok könyvtárát hozzuk létre, és tegyük a webszerver által írhatóvá:
sudo mkdir /var/simplesamlphp/{mdx-cache,metadata/metarefresh}
sudo chgrp www-data /var/simplesamlphp/{mdx-cache,metadata/metarefresh}
sudo chmod g+w /var/simplesamlphp/{mdx-cache,metadata/metarefresh}
Statikus metaadatok
A fenti szakaszban a dinamikus metaadatok konfigurációját már megadtuk, a statikus metaadatokat viszont a cron modul által meghívott metarefresh program végzi, így ezeket is konfigurálni kell.
- Megj: Ha nem használunk belső SP-ket, akkor a szakaszban leírt konfigurációra nincs szükségünk, készen vagyunk!
config/config-metarefresh.php:
<?php
$config = array(
'sets' => array(
'href' => array(
'cron' => array('hourly'),
'sources' => array(
array(
'src' => 'http://metadata.eduid.hu/2011/niifi.xml',
'validateFingerprint' => 'FE:AE:0B:E8:FB:59:ED:F7:CB:7F:69:DF:19:4F:8B:6D:C7:F6:96:66',
),
),
'expireAfter' => 60*60*24*7, // Maximum 4 days cache time.
'outputDir' => 'metadata/metarefresh/',
'outputFormat' => 'flatfile',
),
),
);
config/module_cron.php:
<?php
/*
* Configuration for the Cron module.
*/
$config = array (
'key' => 'eztajelszotcsereldle',
'allowed_tags' => array('daily', 'hourly', 'frequent'),
'debug_message' => TRUE,
'sendemail' => FALSE,
);
Engedélyezzük a cron és a metarefresh modulokat:
sudo touch /var/simplesamlphp/modules/{cron,metarefresh}/enable
Hozzuk létre azt a rendszer cron bejegyzést, amely időzítve meghívja a SimpleSAMLphp cron modulját:
echo '03 * * * * www-data curl --silent "https://idp.example.org/simplesamlphp/module.php/cron/cron.php?key=eztajelszotcsereldle&tag=hourly" \ >/dev/null 2>&1' > sudo tee /etc/cron.d/simplesamlphp
Ezzel az IdP-nk készen áll az eduGAIN konföderációba való publikálásra. A haladó attribútumkiadás-konfiguráció leírása itt található: SSP EntityCategories.
A Resource Registry felületen belépve állítsuk át az entitást az eduGAIN-ben való publikálásra: