107
szerkesztés
Módosítások
→Letöltés
** HEXAA integrációhoz (SP): <code>soap</code>
====PHP csomagok Debian 9 / Ubuntu 16.04 LTS eseténcsomagok====
sudo apt install php php-dom mcrypt php-xml php-mbstring
===Letöltés===
A GitHubról történő telepítés előnye, hogy a simplesamlphp könnyen frissíthető marad, csak a third party modulokat kell újratelepíteni. Az utolsó stabil verzió számát a https://simplesamlphp.org/download oldalról tudhatjuk meg.
cd /var
git clone https://github.com/simplesamlphp/simplesamlphp.git
cd simplesamlphp
git checkout tags/v1.1416.172 -b v1.16.2
composer install --no-dev
=====Naplózás beállítása=====
Alapértelmezetten a SimpleSAMLphp a '''syslog'''-ba irányítja a naplózást. Ha fájlba akarunk naplózni, akkor a megfelelő könyvtárhoz biztosítsunk írás jogot a webszerver felhasználónak, és ne felejtsünk el gondoskodni a naplófájlok rotálásáról gondoskodni! * '''log''' mappa létrehozása és jogosultság beállítása sudo mkdir log; sudo chown www-data:www-data adm log; sudo chmod 775 755 log * Naplózási szint beállítása a '''config/config.php'''-ban 'debug' => array( 'saml' => true, 'backtraces' => true, 'validatexml' => false, ), 'logging.level' => SimpleSAML\Logger::DEBUG, 'logging.handler' => 'file', <span style="color:red">A "SimpleSAML\Logger::DEBUG" a legrészletesebb naplózási beállítás, éles rendszernél nem ajánlott csak hiba keresés esetén.</span>
=====Tanúsítvány készítése=====
==Identity Provider (IdP) beállítás==
===IdP funkció engedélyezéseAlapbeállítások===A <code>'''IdP''' engedélyezése: a '''config/config.php</code> fájlt ''' fájlban kell szerkesztenünk, s engedélyezni a saml20 idp lehetőséget-t "true"-re állítani.
'enable.saml20-idp' => true,
===Alapbeállítások=== ===Autentikáció LDAP alaponautentikáció===
Meg kell adni, hogy az IdP milyen módon azonosítsa a felhasználót, amennyiben alapértelmezés szerint nem engedélyezett modult szeretnénk használni, úgy a megfelelő modult a <code>modules</code> könyvtár alatt engedélyezni kell. Az alábbi példában az LDAP alapú azonosítást mutatjuk be, amely külön modult nem igényel, alapértelmezés szerint része a telepített alkalmazásnak.
A fenti beállítások alapján az SP entityID-ja megegyezik a metadata elérési útvonalával (szokásos megoldás SSP-nél), nem adunk meg alapértelmezett idp-t, ezáltal az SSP választási lehetőséget kínál fel számunkra, mikor az SP-re szeretnénk bejelentkezni, ill. most még Discovery Service URL-t sem adunk meg, hanem a beépítettet használjuk. Ez utóbbit majd a HREF-be történő integrációkor meg kell változtatni - lásd lejjebb.
Az SP készen áll arra, hogy összekössük egy IdP-vel (ez jellemzően szintén egy SimpleSAMLphp alkalmazás). Ehhez szükséges, hogy SP oldalon beállítsuk az IdP metadata-t és IdP oldalon is beállítsuk az SP metadata-t. ====Metadata========Metadata fájlok====A különböző metadata template fájlok a '''metadata-templates''' mappában találhatóak. A nekünk szükséges template fájlt másoljuk át a metadata mappába. * '''SP''' oldalon lennie kell egy''' metadata/saml20-idp-remote.php''' fájlnak. Ez a fájl tartalmazza az IdP eléréséhez szükséges adatokat. cp metadata-templates/saml20-idp-remote.php metadata * '''IdP''' oldalon lennie kell egy '''metadata/saml20-sp-remote.php''' fájlnak. Ez a fájl tartalmazza az SP eléréséhez szükséges adatokat. cp metadata-templates/saml20-sp-remote.php metadata ====Metadata letöltés==== Ezen az oldalon megtaláljuk az SP vagy IDPIdP-re vonatkozó '''metadata'''-t, '''XML''' és '''PHP''' formátumban: https://example.org/simplesaml/module.php/saml/sp/metadata.php/default-sp?output=xhtml
====SP metadata beállítás IDP IdP oldalon====
A metadata '''simplesaml''' kezdőlapon, az alábbi helyen érhető el:
* Magyar nyelv esetén: "Föderáció" fül / "SAML 2.0 SP Metaadatok" pont alatt a "Mutasd a metaadatokat" linkre kattintva juthatunk el a fenti menüponthoz.
* Angol nyelv esetén: "Federation" fül / "SAML 2.0 SP Metadata" pont alatt a "Show metadata" linkre kattintva juthatunk el a fenti menüponthoz.
<source lang="php">
</source>
A vágólapra másolt kódot IdP oldalon, a '''metadata/saml20-sp-remote.php''' fájl végére illesszük be.
====IdP metadata beállítás SP oldalon====
A metadata '''simplesaml''' kezdőlapon, az alábbi helyen érhető el:
* Magyar nyelv esetén: "Föderáció" fül / "SAML 2.0 IdP Metaadatok" pont alatt a "Mutasd a metaadatokat" linkre kattintva juthatunk el a fenti menüponthoz.
* Angol nyelv esetén: "Federation" fül / "SAML 2.0 IdP Metadata" pont alatt a "Show metadata" linkre kattintva juthatunk el a fenti menüponthoz.
<source lang="php">
</source>
A vágólapra másolt kódot SP oldalon, a '''metadata/saml20-idp-remote.php''' fájl végére illesszük be.
===Tesztelés===
A fent elvégzett alapbeállítások után már tudjuk tesztelni a, hogy a felépített IdP - SP kapcsolat működik-e.
SP oldalon nyissuk meg a '''simplesaml''' kezdőlapot:
* Magyar nyelv esetén: "Azonosítás (autentikáció)" fül / "Azonosítási (autentikációs) beállítások tesztelése" link / "default-sp" link-re kattintva tudjuk tesztelni az IdP - SP kapcsolatot.
* Angol nyelv esetén: "Authentication" fül / "Test configured authentication sources" link / "default-sp" link-re kattintva tudjuk tesztelni az IdP - SP kapcsolatot.
A legördülő menüben az IdP-nk "nevére" kattintva, be kell tudnunk jelentkezni (az IdP-n keresztül). Ha működik, akkor az IdP visszairányít az SP-re, kiírja az azonosított felhasználó attribútumait.
==HREF-integráció==