Módosítások

IsPassive

1 129 bájt hozzáadva, 2009. június 1., 18:41
Miért jó?: Miért rossz?
Az '''isPassive ''' SAML2-ben bevezetett lehetőség, mellyel utasíthatjuk azt szabhatjuk meg, hogy az alkalmazástazonosításnak úgy kell megtörténnie, hogy közben semmiféle látható felhasználói interakciót ne engedélyezzen interakciónak nem szabad történnie. Ha az azonosítás így nem hajtható végre, akkor hibát kell visszaadni az IdPSP-velnek.
 '''== Miért jó?'''==Az isPassive használatával elérhetjük, hogy lazy session[[Lazy Session]]-nel védett oldalunkra a felhasználó bejelentkezése automatikusan - azaz "Bejelentkezés" gombra kattintás nélkül - megtörténjen. Ehhez két három feltétel együttes teljesülése szükséges:
* a felhasználó már rendelkezik az IdP-je által hitelesített munkamenettel
* a az IdP által használt autentikációs mechanizmus támogatja az isPassive-ot :: erre kizárólag SAML2 IdP esetén van lehetőség* ha használunk Discovery Service -t, akkor az a felhasználó IdP-jét képes megállapítani interakció nélkül:: ez általában azt jelenti, hogy a felhasználót hitelesítő felhasználónak van olyan cookie-ja, amely alapján a DS meg tudja határozni az IdP-vel háttérben kommunikálnit. Érdemes megjegyezni, s hogy a felhasználóról érdeklődniSWITCH Discovery Service IP cím alapján is képes meghatározni IdP-t.
Amennyiben ezen feltételek közül legalább az egyik valamelyik nem teljesül, úgy az SP hibát fog dobni. Ezt oly módon kell lekezelnünk, hogy a <code>redirectErrors</code> attribútum lehetőségét kihasználva megadjuksegítségével átirányíthatjuk a saját alkalmazásunkra.== Hátrányok ==Lehetséges olyan helyzet, hogy Shibboleth a hiba esetén melyik oldalra dobjon át minket nem jut vissza az SP-hez:* az IdP nem SAML2-t használ* az IdP azonosítási mechanizmusa nem támogatja a rendszerpasszív azonosítást (pl.azért, mert webszerver-alapú azonosítást használ)* a Discovery Service vagy a WAYF nem támogatja a passzív választást
Ebben az esetben a felhasználó olyan üzenetet kap, amit valószínűleg nem tud értelmezni. Pl.:
* hibaüzenet az IdP vagy a DS részéről
* IdP azonosítási felület (ami esetleg nem is a felhasználó IdP-je)
Ezért isPassive-ot csak abban az esetben szabad használni, ha garantálni tudjuk, hogy az IdP-k mind támogatják a passzív autentikációt!
'''== Működése a gyakorlatban'''==* Az [[IsPassive#Kód | alábbi szkriptet ]] szúrjuk be az oldalunk főlapjára / fejlécébe.
* A Shibboleth SP konfigurációjában (<code>shibboleth2.xml</code>) az adott alkalmazásra vonatkozó beállításoknál új attribútumként adjuk meg a <code>redirectErrors="SAJÁT KEZDŐLAPOM"</code> direktívát.
* Bizonyosodjunk meg róla, hogy az oldalt lazy session-nel védjük
 
'''A BESZÚRANDÓ JAVASCRIPT '''
== Kód ==
<source lang="javascript">
<!-- START: isPassive script-->

Navigációs menü