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

Upute za korištenje AAI@EduHr Lab-a

AAI@EduHr Lab funkcionira na gotovo identičan način kao i produkcijski SSO servis s tom razlikom što se u AAI@EduHr Lab okruženju mogu koristiti isključivo testni elektronički identiteti. Za korištenje AAI@EduHr Lab usluge potrebno je registrirati resurs na sličan način na koji se registriraju i produkcijski resursi u sustavu AAI@EduHr.

1) Proces registracije

Procedura za registraciju testnog resursa gotovo je identična proceduri za registraciju produkcijskog resursa, razlika je samo u vrijednosti parametra Vrsta resursa. Za registraciju testnog resursa potrebno je prijaviti se u online Registar resursa, odabrati opciju Registracija resursa, popuniti formu s općim podacima o resursu i SAML metapodacima te poslati zahtjev za registracijom. Pritom je važno naglasiti da u formi za registraciju resursa, u polju Vrsta resursa treba biti postavljena vrijednost Test.

Nakon što zahtjev za registracijom resursa bude odobren od strane AAI@EduHr tima, autentikacija putem AAI@EduHr Lab Single Sign-On servisa bit će omogućena, a osoba koja je postavila zahtjev za registracijom dobit će o tome obavijest elektroničkom poštom.
 

Važne napomene:

1. Iz sigurnosnih razloga pristup AAI@EduHr registru resursa omogućen je samo korisnicima čiji zahtjev za prijavom u Registar odobre administratori sustava AAI@EduHr. Stoga je prilikom inicijalne prijave u Registar potrebno navesti razlog zbog kojeg biste trebali imati mogućnost korištenja Registra resursa.

2. Ako prvi put registrirate neki resurs putem AAI@EduHr registra resursa ili do sada niste imali nikakvih iskustava sa SAML protokolom, moguće je da nećete znati popuniti pojedina polja prilikom registracije resursa. U slučaju da imate bilo kakvih problema s popunjavanjem forme za registraciju resursa, kontaktirajte AAI@EduHr razvojni tim.

 

2) Metapodaci

Obzirom da resursi koji imaju status Test ne mogu koristiti produkcijsku inačicu sustava jedinstvene autentikacije korisnika, u konfiguraciji SAML klijenta potrebno je unijeti parametre za pristup inačici sustava jedinstvene autentikacije korisnika implementiranoj u sklopu AAI@EduHr Lab-a. U nastavku su navedene upute na koji način se najčešće korišteni SAML klijenti (autentikacijski moduli) podešavaju za autentikaciju putem razvojnog sustava jedinstvene autentikacije.

 

Važna napomena:

Ako je programska podrška na vašem poslužitelju već bila iskonfigurirana za korištenje produkcijskog AAI@EduHr Single Sign-On servisa, prije nego što krenete raditi izmjene navedene u nastavku napravite kopiju svake datoteke u kojoj radite izmjene kako biste u trenutku eventualne promjene statusa resursa iz testnog u produkcijski mogli što lakše vratiti konfiguraciju podešenu za uporabu produkcijskog Single Sign-On servisa!

 

simpleSAMLphp (PHP):

Ako se kao autentikacijski modul koristi SimpleSAMLphp, u datoteci ../metadata/saml20-idp-remote.php postojeći sadržaj treba zamijeniti sljedećim sadržajem:
 

$metadata['https://fed-lab.aaiedu.hr/sso/saml2/idp/metadata.php'] = array (
  'metadata-set' => 'saml20-idp-remote',
  'entityid' => 'https://fed-lab.aaiedu.hr/sso/saml2/idp/metadata.php',
  'SingleSignOnService' => 'https://fed-lab.aaiedu.hr/sso/saml2/idp/SSOService.php',
  'SingleLogoutService' => 'https://fed-lab.aaiedu.hr/sso/saml2/idp/SingleLogoutService.php',
  'certData' =>

'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'

);

A u datoteci ../config/authsources.php, u segmentu koji se odnosi na Service Provider parametar kojeg koristi vaša aplikacija (standardno je to default-sp, ali za autentikaciju preko fed-lab.aaiedu.hr servisa trebate koristiti fedlab-sp) varijabla idp treba imati vrijednost kao što je prikazano u nastavku:
 

'fedlab-sp' => array(
  'saml:SP',
  'entityID' => NULL,
  'idp' => '
https://fed-lab.aaiedu.hr/sso/saml2/idp/metadata.php',
  'discoURL' => NULL,
),

Napomena: Prethodno navedene upute trebale bi vrijediti za sve inačice programskog alata SimpleSAMLphp počevši od verzije 1.5 nadalje. Međutim, zbog sigurnosnih razloga najniža verzija koju preporučamo je SimpleSAMLphp 1.15.4 (ručna instalacija raspakiravanjem iz arhive ili instalacija iz AAI@EduHr Debian paketa).

 

Shibboleth (Java):

Ako se kao autentikacijski modul koristi Shibboleth 2.x, u datoteci metadata.xml, unutar taga EntityDescriptor treba postaviti slijedeće vrijednosti parametra validUntil i entityID:
 

validUntil="2020-05-12T00:00:00Z"
entityID="
https://fed-lab.aaiedu.hr/shib/saml2/idp/metadata.php"

Vrijednost parametra validUntil označava do kada vrijede podaci navedeni u datoteci metadata.xml. Obzirom da se ti podaci u pravilu ne mijenjaju često, u pravilu se taj datum poklapa s datumom isteka aktualnog certifikata kojim SSO servis potpisuje autentikacijske odgovore što je u konkretnom slučaju 12.05.2020.

Zatim je u bloku <IDPSSODescriptor> ... </IDPSSODescriptor> u odjeljku:
 

<KeyDescriptor use="signing">
<ds:KeyInfo>
<ds:X509Data>
<ds:X509Certificate>
...
</ds:X509Certificate>
</ds:X509Data>
</ds:KeyInfo>
</KeyDescriptor>

 

između tagova <ds:X509Certificate> i </ds:X509Certificate> umjesto postojećeg potrebno ubaciti certifikat koji se nalazi na adresi

https://fed-lab.aaiedu.hr/shib/module.php/saml/idp/certs.php/idp.crt

 

Napomena: Prilikom kopiranja sadržaja certifikata NE SMIJE se iskopirati prva (BEGIN CERTIFICATE) i zadnja (END CERTIFICATE) linija, nego samo ono što se nalazi između njih.

Također, pri samom kraju bloka <IDPSSODescriptor> ... </IDPSSODescriptor> potrebno je navesti adresu AssertionConsumer servisa:
 

<SingleSignOnService Binding="urn:mace:shibboleth:1.0:profiles:AuthnRequest"
Location="https://fed-lab.aaiedu.hr/shib/saml2/idp/SSOService.php"/>
<SingleSignOnService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect"
Location="https://fed-lab.aaiedu.hr/shib/saml2/idp/SSOService.php"/>
<SingleSignOnService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"
Location="https://fed-lab.aaiedu.hr/shib/saml2/idp/SSOService.php"/>

 

i time su završene sve potrebne izmjene u datoteci metadata.xml.

U datoteci shibboleth2.xml u bloku <SessionInitiator type="Chaining" ... > </SessionInitiator> postojeću vrijednost parametra entityID treba zamijeniti sljedećom vrijednošću:
 

entityID="https://fed-lab.aaiedu.hr/shib/saml2/idp/metadata.php"
 

i na kraju, da bi se učitala nova konfiguracija potrebno je restartati Shibboleth servis.

 

OIOSAML.NET (Microsoft .NET platforma):

Ako se kao autentikacijski modul koristi OIOSAML.NET, za autentikaciju putem AAI@EduHr Lab Single Sign-On servisa vrijede upute na stranici Implementacija autentikacije putem sustava AAI@EduHr u .NET web aplikacijama uz nekoliko manjih izmjena:

  • U koraku 10 blok <IDPEndPoints metadata="C:\metadata\>...</IDPEndPoints> treba imati sljedeći sadržaj:

    <IDPEndPoints metadata="C:\metadata\>
    <add id="https://fed-lab.aaiedu.hr/ms/saml2/idp/metadata.php">
    <CertificateValidation>
    <add type="dk.nita.saml20.Specification.SelfIssuedCertificateSpecification, dk.nita.saml20"/>
    </CertificateValidation>
    </add>
    </IDPEndPoints>

     
  • U koraku 10 metapodatke treba dohvatiti s adrese https://fed-lab.aaiedu.hr/ms/saml2/idp/metadata.php

 

3) Migracija iz testnog u produkcijsko okruženje

Od uvođenja AAI@EduHr Lab Single Sign-On servisa u produkciju, resursi koji koriste AAI@EduHr sustav jedinstvene autentikacije fizički su razdvojeni u dvije skupine:

  • Resursima koji u Registru resursa kao vrijednost parametra Vrsta resursa imaju postavljeno Test omogućena je autentikacija isključivo putem testnog AAI@EduHr Single Sign-On servisa uz uporabu elektroničkih identiteta pohranjenih u testnim LDAP imenicima kreiranim u sklopu AAI@EduHr Lab-a.
     
  • Resursima koji u Registru resursa kao vrijednost parametra Vrsta resursa imaju postavljeno Produkcija omogućena je autentikacija isključivo putem produkcijskog AAI@EduHr Single Sign-On servisa uz uporabu elektroničkih identiteta pohranjenih u LDAP imenicima matičnih ustanova u sustavu AAI@EduHr.

Niti jedan resurs ne može istodobno imati pristup i testnom i produkcijskom Single Sign-On servisu.

Ovisno o tehnologiji, odnosno programskom jeziku korištenom za implementaciju pojedinog resursa, za pristup produkcijskom AAI@EduHr Single Sign-On servisu potrebno je na strani resursa iskonfigurirati parametre u skladu s uputama na web stranici Kako implementirati autentikaciju putem sustava AAI@EduHr u PHP aplikacijama  ili Kako implementirati autentikaciju putem sustava AAI@EduHr u .NET web aplikacijama.

Za pristup testnoj inačici Single Sign-On servisa potrebno je slijediti iste upute kao i kod produkcijskog servisa i nakon toga još napraviti izmjene opisane u koraku 2) na ovoj stranici.

Prilikom migracije resursa iz testnog u produkcijsko okruženje (i obrnuto), na strani AAI@EduHr sustava potrebno je u Registru resursa promijeniti vrijednost polja Vrsta resursa i kliknuti na opciju Zatraži promjenu podataka. Na taj način ćete postaviti zahtjev za promjenu statusa resursa. Prilikom prebacivanja resursa iz testnog u produkcijsko okruženje, zahtjev za promjenom najprije treba odobriti odgovorna osoba matične ustanove s kojom je resurs povezan, a potom i netko od administratora sustava AAI@EduHr. Nakon što zahtjev za izmjenom statusa bude odobren od strane administratora sustava AAI@EduHr, ovisno o vrsti zahtjeva resurs će biti prebačen iz konfiguracije testnog u konfiguraciju produkcijskog AAI@EduHr Single Sign-On servisa ili obrnuto.

Za sva dodatna pitanja i pomoć pri rješavanju eventualnih problema možete kontaktirati administratore sustava AAI@EduHr slanjem elektroničke pošte na adresu aai@srce.hr.