UApprove

= uApprove =

Felépítés
Az uApprove a SWITCH.ch által fejlesztett alkalmazás, ami a Shibboleth2 IdP-vel együttműködve képes a felhasználótól attribútum-kiadás hozzájárulást kérni.

A uApprove két részből áll. Egy szervlet filterből (IdP plugin), ami a Shibboleth2 IdP webalkalmazásba beépülve elkapja és elemzi a kéréseket, illetve egy különálló webalkalmazásból (Viewer), ami a felhasználói hozzájárulást kéri el.

A felhasználói hozzájárulásnak két szintje van: a globális felhasználási feltételek elfogadása, illetve minden SP esetén egy ún. digitális identitás elfogadása. Ez utóbbi felület lehetőséget ad a felhasználó számára hogy lássa az adott SP felé kiadandó attribútumait, és beleegyezzen azok kiadásába.

A hozzájárulások XML fájlban vagy relációs adatbázisban is tárolhatók. A uApprove lehetőséget ad arra, hogy az SP-hez történő hozzáféréseket naplózza, az attribútum-kiadástól függetlenül (tehát elég az IdP plugin komponenst használni ahhoz hogy a naplózás működjön - ezt Monitoring módnak hívjuk).

uApprove viewer webalkalmazás telepítése
A uApprove közös konfiguráció a common.properties fájlban található:

storageType = Database databaseConfig = /path/to/uApprove/database.properties termsOfUse = /path/to/uApprove/terms-of-use.xml SharedSecret = some-very-random-string
 * 1) storageType = File
 * 2) flatFile = /path/to/uApprove/uApprove-log.xml
 * 1) A globális felhasználási feltételeket tároló fájl
 * 2) Ebben az XML-ben több verzió is tárolható,
 * 3) verzióváltás esetén a felhasználónak újra el kell fogadnia.
 * 1) Kommunikáció titkosításához

database.properties (a támogatott RDBMS a MySQL): driver = com.mysql.jdbc.Driver url = jdbc:mysql://localhost:3306/*dbname* user = *username* password = *password* sqlCommands = /path/to/ArpViewer/mysql.commands

viewer.properties:

useLocale = HU_hu globalConsentPossible=true loggingConfig = /path/to/uApprove/logging.xml
 * 1) amennyiben a böngésző nem küld lokalizációs információt, ezen beállítás jut érvényre
 * 1) felajánljuk-e a felhasználónak az sp-től független beleegyezést

attribute-list: az attribútumok sorrendezését és egyes nem kívánt attribútumok (pl transientid) elrejtését állíthatjuk be benne. Az attribútumnevek a Shibboleth2 attribute-resolver.xml -ben deklaráltaknak kell megfeleljenek.

web.xml (/path/to/tomcat/webapps/uApprove/WEB-INF):

IdP plugin beállítása
Csomagoljuk ki a plugint és másoljuk a konfigurációt illetve a szükséges library fájlokat a helyükre

Ezután szerkesszük az IdP web.xml konfigurációját

Ezután a Shibboleth IdP setup.sh szkriptjével készítsük el a webarchívumot (idp.war), amit telepítsünk újra.

A uApprove IdP plugin egyedi beállításai az idp-plugin.properties-ben találhatóak:

spBlacklist = /path/to/config/sp-blacklist LogProviderAccess = false MonitoringOnly = false uApproveViewer = https://idp.example.org/uApprove/Controller isPassiveSupport = false
 * 1) Azon SP-hez amihez nem akarunk ArpFiltert használni
 * 1) SP logolás
 * 1) Csak SP logolás
 * 1) ArpViewer alkalmazás helye
 * 1) Támogassuk-e a passzív authentikációt

Attribútumnevek beállítása
Az attribútumnevek helyes megjelenítéséhez az ArpViewer a Shibboleth2 IdP attribute-resolver.xml fájlt használja. Ebben a fájlban kell beállítani a lokalizált attribútumneveket a következőképpen:

Shibboleth2 IdP conf/attribute-resolver.xml:

Megjegyzés: a Resource_Registry által előállított attribute-resolver.xml template fájl tartalmazza az attribútumok magyar nyelvű leírásait.

ArpFilter before the profile servlet - support for other authentication modules
Lásd: ArpFilterProposal (angol)