[HREF-tech] affiliation + status

Kristof Bajnok bajnokk at niif.hu
2010. Nov. 19., P, 10:44:30 CET


Sziasztok,

nem tudom, mennyire jelent problémát, hogy egy felhasználó lehet nem-aktívan 
is hallgató/oktató/stb. Jelenleg az intézményekre van bízva, hogy pl. egy 
passzív hallgatónál megtartják vagy megvonják a "student" bitet. 
[Félreértések elkerülése végett: a tanulmányait befejező (pl. kirúgott) 
hallgató, kilépő dolgozó esetén egyértelmű, hogy a viszonyt meg kell vonni.]

A státusz jelzésére felmerült egy ötlet. Fontos tisztában lenni azzal, hogy a 
státusz jelen esetben nem közvetlenül a felhasználóra jellemző, hanem az adott 
viszonyra. Így lehetséges, hogy valaki "student+staff", majd passzív félévre 
megy, de mint dolgozó aktív marad. Hasonló kérdés merülHET fel a GYES-en levő 
szülőkkel kapcsolatban.

Az affiliation-t ugyebár scope-os formában adjuk ki, multi value attribútumként. 
Ha a _scope-ban_ szerepeltetnénk azt az információt, hogy az adott affiliation 
aktív vagy sem, akkor ez alapján az SP eldöntheti, hogy nyújt-e szolgáltatást.

Példa: az intézmény meghatározhatja, hogy
 - student at intezmeny.hu affiliation az *aktív hallgatókat jelenti*
 - student at inactive.intezmeny.hu az *inaktív hallgatókat jelenti*

Így az SP a következőt teheti (Shibboleth SP .htaccess példa):
 - ha bármilyen PTE-s hallgatónak akar szolgáltatást nyújtani: 
  -- require affiliation ~ ^student at .*\.pte.hu$
 - ha csak az aktív PTE-s hallgatóknak akar szolgáltatást nyújtani:
  -- require affiliation ~ ^student at pte.hu$

Eddig az ötlet, ezt intézményen belül szerintem gond nélkül lehet használni.

A kérdés az, hogy vezessünk-e be olyan föderációs követelményt, ami kimondja, 
hogy az IdP-knek jelölniük _kell_ ezt az információt. Én ennek inkább ellene 
vagyok. Előnye lehetne, hogy külső SP-k tudnak szűrni "aktívságra", viszont 
hátrányai is vannak:
 - az intézmény maga szabja meg a szabályokat, hogy ki számít 
aktívnak/passzívnak. Erre még hallgatók esetében sem igazán tudunk általános 
igazságokat megfogalmazni.
 - nem biztos, hogy mindenki meg tudja/akarja ezt tenni. Az is lehet pl., hogy 
simán törlik a "student" bitet a nem-aktív hallgatóktól.
 - negatív regexpet (student@$barmi ahol $barmi nem kezdődhet "inactive\." 
stringgel) írni nem lehetetlen, de távolról sem egyszerű, főleg ha mellette 
VAGY szabályokat is akarunk az access controlnál. 

Összefoglalva: szerintem intézményen belül, ill. kölcsönös megállapodás 
alapján működhet a fent leírt "státusz a scope-ban" trükk. Föderációs 
követelményt viszont ne állítsunk ezzel kapcsolatban.

Vélemény? 

Kristóf



További információk a(z) HREF-tech levelezőlistáról