K4

From NMS
Jump to: navigation, search

Systém používaný na ČVUT pro konfiguraci přístupů pomocí (ČVUT) karty.

Lokální dynamické skupiny

Od podzimu 2016 existuje možnost vytvářet a plnit si vlastní skupiny v přístupovém systému K4. Na FJFI lze pro použít sychronizační skript, který na základě definovaných pravidel umožňuje automaticky v pravidelných intervalech synchronizovat data z různých zdrojů (textové soubory, LDAP, databáze, Usermap, ...). Aktuálně probíhá synchronizace FJFI dat každou hodinu a vzhledem k technickému řešení probíha druhá synchronizace na VIC do K4 systému. Z toho vyplývá, že propagace aktualizovaných dat může v nejhorším případě trvat i dvě hodiny.

Konfigurace

Synchronizační skript K4Sync.py je spuštěn kažkou hodinu (pro účely okamžitého testování nových skupin lze synchronizaci spustit i ručně) a provádí změny na základě konfiguračního souboru K4Sync.conf jehož struktura je popsána v hlavičce skriptu, viz.

  • Syntax:
    • add & synchronize group
W14-GROUP-NAME[Group description]=Module1[param1]+(Module2[param2]-Module3[param3])
    • remove group
-W14-GROUP-NAME=
  • Modules:
    • PersonalIds[252509,342356] - list of personal IDs
    • Usernames[vokacpet,keroupav] - list of usernames (resolved to personal IDs)
    • FileWithPersonalIds[filename] - list of personal IDs stored in "filename"
    • FileWithUsernames[filename] - list of usernames stored in "filename"
    • FjfiAdGroups[stu] - list of members of the FJFI AD group "stu" (return values of the ctuPersonalId)
    • FjfiAdFilter[givenName=Petr] - arbitrary FJFI AD filter (return values of the ctuPersonalId)
    • CvutAdGroups[14101-PRACOVNIK] - list of members of the CVUT AD group "14101-PRACOVNIK" (return values of the employeeNumber)
    • CvutAdFilter[cvutRolesB2=14101:410] - arbitrary CVUT AD filter (return values of the employeeNumber)
    • OracleRole[OracleRole[B-14101-SUMA-PRACOVNIK] - list of users with Usermap technical/business role
    • OracleStudy[3901R061] - list students with currently active study plan "3901R061"
    • OracleStudy[3901R061;180] - list students with study plan "3901R061" that did not expired more than 180 days ago
    • OracleQuery[???] - arbitrary query to the Oracle UsermapV4 database
  • Expressions:
    • Module1[param1]+Module2[param2] - union
    • Module1[param1]-Module2[param2] - difference
    • Module1[param1]&Module2[param2] - intersection
    • Module1[param1]^Module2[param2] - symetric difference
    • (M1[p1]-M2[p2])+M3[p3] - parenthesis for precedence
  • Examples:
W14-TEST[W14 Testovaci FJFI skupina]=
#W14-TEST1[W14 Testovaci FJFI skupina]=Usernames[usernam1,usernam2]
#-W14-TEST1[W14 Testovaci FJFI skupina]=

Editace & stav & update