Autentikacijska i autorizacijska infrastruktura sustava znanosti i visokog obrazovanja u Republici Hrvatskoj
  • Hrvatski
  • English

Kako implementirati autentikaciju putem sustava AAI@EduHr u Java aplikacijama?

Implementacija SAML autentikacije u Java web aplikacijama nešto je kompliciranja nego aplikacijama realiziranim uporabom npr. PHP ili .NET platforme jer ne postoji standardiziran način kako implementirati autentikaciju putem sustava AAI@EduHr u Java web aplikacijama. Međutim, neka od rješenja za koja znamo da funkcioniraju u praksi navedena su u nastavku.
 

Spring Security SAML

Java API koji nudi najviše fleksibilnosti prilikom implementacije u Java aplikacijama, ali je dokumentacija i tehnička podrška nešto skromnija nego kod drugih rješenja:

http://projects.spring.io/spring-security-saml/

Prilikom registracije resursa u Registru resursa, za SAML parametar "AuthService" potrebno je odabrati opciju "Univerzalni".

Shibboleth Service Provider

Shibboleth SP je vjerojatno najrasprostranjenije rješenje za implementaciju SAML SSO autentikacije, ali zahtijeva instalaciju Shibboleth SP daemona i Apache web poslužitelja ispred web poslužitelja unutar kojega se vrti Java web aplikacija:

https://shibboleth.net/products/service-provider/

Prilikom registracije resursa u Registru resursa, za SAML parametar "AuthService" potrebno je odabrati opciju "Shibboleth".

Apache Mod Auth Mellon

Apache modul koji odrađuje SAML SSO autentikaciju. Kao i u prethodnom slučaju, zahtijeva da se Apache vrti ispred web poslužitelja unutar kojega se vrti Java web aplikacija.
 

Za koje god rješenje se odlučite, AAI@EduHr tim vam može pomoći podesiti parametre za povezivanje s AAI@EduHr sustavom jedinstvene autentikacije, ali očekuje se da samu implementaciju nekog od gore navedenih rješenja unutar vaše aplikacije u najvećoj mjeri realizirate sami.

Ako se radi o Java aplikaciji koju ste u potpunosti sami napisali, naša preporuka je da za implementaciju SAML SSO funkcionalnosti iskoristite Spring Security SAML jer se radi o Java biblioteci koji ne zahtijeva instalaciju nikakvih dodatnih servisa.

S druge strane, ako se radi o nekakvoj šire rasprostranjenoj Java aplikaciji, preporučamo da u neku od web tražilica pokušate unijeti naziv aplikacije + Shibboleth jer možda na netu već postoji kuharica kako AAI-zirati navedenu aplikaciju uporabom Shibboleth-a.