LPS:IdM/midPoint/Stag
Z HelpDesk
Info
- endpointy:
- při udatech: vyplňuje se položka stagUser podle přihlášeného uživatele
Resourcy
Stag číselníky
- konektor: connector-stagc
- WSDL: https://stag-demo.zcu.cz/ws/services/soap/ciselniky?wsdl
- volání (viz kód v connector-stagc.git):
- getHierarchiePracovist
- getSeznamPracovist
- getCiselnik
- co hlídat:
- pracoviště bez rodiče
- neaktivní pracoviště
- pracoviště bez vazby na Stag (automaticky by už měla být jako neaktivní)
- ?visící global role?
- pracoviště bez "GLOBAL" rolí
- deaktivace:
- pracoviště: v midPoint zůstávají, jen disabled
- global role: při zrušení pracoviště mizí hned
kind | objectClass | intent | strom |
---|---|---|---|
org | pracoviste | pracoviste | orgType='pracoviste-org-str' |
entitlement | doktorandGroup | global-doktorand-group | roleType='stag-global-group-doktorand' |
entitlement | subjectGroup | global-group-subject | roleType='stag-global-group-subject' |
entitlement | studentGroup | global-group-student | roleType='stag-global-group-student' |
org | typStudiaGroup | global-typ-studia | orgType='stag-global-typ-studia' |
org | formaStudiaGroup | global-forma-studia | orgType='stag-global-forma-studia' |
- pracoviste:
- pouze platné, zneplatněné a smazané v midPointu zůstávají
- global-doktorand-group: pouze katedry
- global-group-subject: pouze katedry
- global-group-student: pouze fakulty
- global-typ-studia: podle číselníku TYP_OBORU
- global-forma-studia: podle číselníku FORMA_OBORU_NEW
Stag studenti
- konektor: connector-stags
- WSDL: https://stag-demo.zcu.cz/ws/services/soap/cro_studenti?wsdl
- volání (viz kód v connector-stags.git):
- selectPredmetyStudia
- selectAllRole - jen aktivní studia
- selectRoliOsoby
- updateOsoba - vložení CRO_ID a login
- selectChangedOsoby(), selectChangedRole()
kind | objectClass | intent | strom |
---|---|---|---|
account | AccountObjectClass | student | - |
entitlement | CustomStudiumObjectClass | studium | roleType=studium |
entitlement | CustomPredmetObjectClass | predmet | roleType=predmet |
liveSync
U liveSync je třeba dát pozor - změny ze selectChangedOsoby() a selectChangedRole() se ukazují pouze tam, kde se staly. Např. vypočítávané atributy u osob se za změnu osoby nepovažují.
==> pro liveSync u osob bereme změny ze studijních rolí i z osob
U studijních rolí je většina změn.
Také pozor na závislosti objektů - při výpočtu atributů u osoby je potřeba mít již nachystané role. liveSync je nastaven, aby bral osoby se zpožděním oproti studijním rolím - poslední 1,5 minuty u osob se odkládá na příště.
Stag učitelé
- konektor: connector-stagt
- WSDL: https://stag-demo.zcu.cz/ws/services/soap/cro_ucitele?wsdl
- volání (viz kód v connector-stagt.git):
- selectAllUcitele
- selectUcitele
- insertUcitele
- updateUcitele
Poznámky
- atribut idc: pokud je vyplněné idc, je záznam považován za automaticky udržovaný a nelze ručně modifikovat správci (modifikace jdou z IdM přes WS Stagu), s prázdným IDC lze učitele modifikovat administrátory ručně
- externisti:
- záznamy se zamestnanec=N se považují za externisty - WS Stagu je nesmaže při operaci mazání, ani při operaci mazání neresetuje orion login
- od IdM se očekává, že při založení nastaví počáteční hodnotu zamestnanec=A a pak si hodnoty nevšímá; správci si pak mohou přepnout učitele na externistu
- externisty si mohou zakládat katedry (nelze brát jako zdroj identit - smyšlená RČ, ...)
- mazání atributů: v update operaci nastavením na "" (v SOAP zprávě jako prázdný tag)
, nebo u číselníkových hodnot použití 0
Mazání
Záznam učitele nelze vždy smazat - mohou být dependence a chráněny jsou záznamy o externistech (zamestnanec=N); Stag WS nastaví platnosti na 'N' a promaže idc a pokud nejde o externistu i orionUsername.
Constrainty
- unikátnost (prohledávat lze podle ucitIdno, rodCislo a orionUsername):
- ucitIdno (při pokusu o modifikaci je změna ignorována)
- rodCislo
- idc
- orionUsername
- číselník pracovišť ze Stagu (nutno správně mapovat u zaměstnanců z Magionu):
- pracZkr
- pracovisteDalsi
- adresy (nevyplňujeme): kombinace město+PSČ+okres podle číselníků
- RČ: musí být platné (český formát dělitelný 11, české starší RČ nebo formát pro cizince)
- povinné položky:
- rodCislo
- statIdnoObcaName
- ...
kind | objectClass | intent | strom |
---|---|---|---|
account | AccountObjectClass | ucitel | - |