Erinevus lehekülje "Liitumine eduGAIN-iga" redaktsioonide vahel
(→Testimine) |
(→config/config-metarefresh.php) |
||
75. rida: | 75. rida: | ||
20 => array( 'class' => 'core:TargetedID', | 20 => array( 'class' => 'core:TargetedID', | ||
'attributename' => 'eduPersonPrincipalName', | 'attributename' => 'eduPersonPrincipalName', | ||
+ | 'nameId' => TRUE, | ||
), | ), | ||
Redaktsioon: 10. oktoober 2018, kell 13:37
Sisukord
EduGAIN-iga liitumise juhend
Automaatne metadata laadimine
Kui soovite ühendada teenuse- või identiteedipakkujat föderatsiooni, tuleb esmalt seadistada metaandmed, mida usaldate. TAATis on metaandmete jagamine automatiseeritud kasutades selleks URLi, mis väljastab kõigi asutuste SAML 2.0 XML formaadis metaandmed, kes föderatsiooni kuuluvad.
Rohkem infot ametlikust SimpleSAMLphp juhendist https://simplesamlphp.org/docs/stable/simplesamlphp-automated_metadata
Eeltöö
Aktiveerige järgnevad moodulid:
- cron
- metarefresh
- consent
Croni moodul käivitab etteantud töid perioodiliselt.
Metarefresh moodul laeb alla ja parsib metaandmed ning salvestab need lokaalselt vahemällu.
Consent küsib kasutajatelt luba kasutajate atribuutide edastamiseks teenusepakkujale.
Esmalt kopeerige config-templates failide seast ülalpool mainitud moodulid globaalsesse config/ kausta.
[root@simplesamlphp] cd /var/simplesamlphp [root@simplesamlphp simplesamlphp] touch modules/cron/enable [root@simplesamlphp simplesamlphp] cp modules/cron/config-templates/*.php config/ [root@simplesamlphp simplesamlphp] touch modules/metarefresh/enable [root@simplesamlphp simplesamlphp] cp modules/metarefresh/config-templates/*.php config/ [root@simplesamlphp simplesamlphp] touch modules/consent/enable
Konfiguratsiooni täiendused
EduGAINi metadata automaatseks laadimiseks on vaja teha seadetes järgnevad muudatused:
config/config-metarefresh.php
NB! schacHomeOrganization ja schacHomeOrganizationType väärtused tuleb seadistada vastavalt asutuse TAAT-i lepingule. Juhul kui config.php failis või mujal on AttributeLimit koos atribuutide nimekirjaga defineeritud, siis tuleb sinna lisada kõik Metarefreshi konfis AttributeAdd sees olevad atribuutide nimed. Vastasel juhul filtreeritakse need automaatselt välja. (schacHomeOrganization, schacHomeOrganizationType)
schacHomeOrganization = asutuse_domeeninimi.ee
schacHomeOrganizationType - lubatud väärtusi vaata siit.
<?php $config = array( 'sets' => array( 'edugain' => array( 'cron' => array('hourly'), 'sources' => array( array( 'src' => 'https://taeva.taat.edu.ee/metadata/metadata.edugain+sp.xml', 'validateFingerprint' => 'C5:F4:79:B5:80:8D:90:C2:5A:7D:B0:8D:B4:99:D7:2D:06:7F:DE:E5', 'template' => array( 'tags' => array('edugain'), 'validate.authnrequest' => FALSE, 'validate.logout' => FALSE, 'authproc' => array( // Add schacHomeOrganization and schacHomeOrganizationType for domain of entity 10 => array('class' => 'core:AttributeAdd', 'schacHomeOrganization' => 'domeenimi.ee', 'schacHomeOrganizationType' => 'urn:schac:homeOrganizationType:int:university', ), // Add eduPersonScopedAffiliation based on eduPersonAffiliation and eduPersonPrincipalName. 11 => array('class' => 'core:ScopeAttribute', 'scopeAttribute' => 'eduPersonPrincipalName', 'sourceAttribute' => 'eduPersonAffiliation', 'targetAttribute' => 'eduPersonScopedAffiliation', ), // Add the persistent to the eduPersonTargetedID attribute 20 => array( 'class' => 'core:TargetedID', 'attributename' => 'eduPersonPrincipalName', 'nameId' => TRUE, ), 45 => array('class' => 'consent:Consent', 'store' => 'consent:Cookie', 'focus' => 'yes', 'checked' => TRUE ), /* allow sane set of name attributes */ 51 => array('class' => 'core:AttributeMap', 'name2oid'), 52 => array('class' => 'core:AttributeLimit'), ), ), ), ), 'expireAfter' => 60*60*24*4, // Maximum 4 days cache time. 'outputDir' => 'metadata/edugain/', /* * Which output format the metadata should be saved as. * Can be 'flatfile' or 'serialize'. 'flatfile' is the default. */ 'outputFormat' => 'flatfile', ), ), );
Tehke eduGAIN-i metadata jaoks eraldi kaust.
mkdir -p metadata/edugain
config/config.php
# ... rest of the file # # Find 'metadata.sources' section and make it to reflect: 'metadata.sources' => array( array('type' => 'flatfile', 'directory' => 'metadata'), array('type' => 'flatfile', 'directory' => 'metadata/edugain'), ), # ... rest of the file
module_cron.php
<?php /* * Configuration for the Cron module. * * $Id: $ */ $config = array ( 'key' => 'RANDOM_KEY', 'allowed_tags' => array('daily', 'hourly', 'frequent'), 'debug_message' => false, 'sendemail' => false, ); ?>
simplesamlphp_cron
# Run SimpleSAMLphp Hourly tasks at every second minute of an hour 2 * * * * apache curl --silent "https://SERVER/simplesaml/module.php/cron/cron.php?key=RANDOM_KEY&tag=hourly" > /dev/null 2>&1
Kindlasti vaja seada croni jaoks parool (märgitud failides RANDOM_KEY-iga), sest muidu saab igaüks tulla ja taske käivitada. Samuti on vaja teha kaust metadata/edugain ja sellele veebiserverile kirjutamise õigus anda.
Kohustuslikud atribuudid
- HomeOrganizationType
- Lubatud väärtused:
- urn:schac:homeOrganizationType:int:university
- Ülikoolid või kolledžid
- urn:schac:homeOrganizationType:int:school
- Alg- või põhikoolid
- urn:schac:homeOrganizationType:int:library
- Raamatukogud
- urn:schac:homeOrganizationType:int:nren
- Riiklikud teadus- ja haridusasutuste võrgud
- urn:schac:homeOrganizationType:int:business
- Tööstus- ja äriühingud
- urn:schac:homeOrganizationType:int:other
- Muud asutused
- urn:schac:homeOrganizationType:int:test
- Testimiseks
- Lubatud väärtused:
Testimine
Hetkel on eduGAIN-i atribuutide kontrollteenus alles valmimisel. Kui kõik ülalmainitud muudatused on tehtud, siis saab kontrollida sisselogimist ja edastatud atribuute nendes teenustes:
NB! Mõned testid võivad ebaõnnestuda eduPersonUniqueId puudumise tõttu. Sellest hoolimata peaks saama eduGAINi teenuseid kasutada. Võimalik, et puudu on persistent-id, sellisel juhul võtke ühendust EENetiga eenet@eenet.ee.
Samuti tuleb arvestada, et erinevad teenusepakkujad võivad vajada erinevaid atribuute. Sellest tulenevalt võivad ka erinevate föderatsioonide atribuutide testid veidike erinevaid tulemusi näidata.
Testimise kiirendamiseks on võimalik administraatori kasutajaga SimpleSAMLphp lehele logides metarefreshi ka käsitsi käivitada.