SDITemplate jogosultsági rendszere

Innen: Szoftver Messiás Wiki
A lap korábbi változatát látod, amilyen Gandalf (vitalap | szerkesztései) 2014. szeptember 30., 10:45-kor történt szerkesztése után volt.
Ugrás a navigációhoz Ugrás a kereséshez

Ez a modul az SDITemplate adatbázisos keretrendszer dokumentációjának a része.

Bevezetés

A jogosultsági rendszer három fő részből áll:

  • Felhasználók azonosítása (authentikáció)
  • Szerepkörök és csoportok, ezek kapcsolata a felhasználókkal
  • Jogosultság ellenőrzés (authorizáció), ezen belül:
    • Általános jogosultság kezelés: jogosultságok kiosztása és ellenőrzése művelet típusokra általában
    • Egyedi jogosultság kezelés: jogosultságok kiosztása és ellenőrzése üzleti objektumokra
    • Speciális jogosultság kezelés: különleges jogosultságok kiosztása folyamat állapot átmenetekre és egyebekre.


Felhasználók azonosítása (authentikáció)

A felhasználók az azonosítás eszközei. A felhasználó lehet aktív/inaktív. Csak az aktív felhasználó tud bejelentkezni. Az aktivitást a felhasználó érvényességi idejének megadásával lehet beállítani. A megadott érvényességi időn túl a felhasználó nem fog tudni bejelentkezni. A felhasználók azonosítása titkos jelszóval történik. A felhasználó publikus azonosítója az egyedi bejelentkezési név. A felhasználónál meg lehet adni hogy ki a felettese (ő szintén egy felhasználó). Van két speciális beépített felhasználó. Az egyik „Rendszergazda” néven a másik „admin” néven. Nekik szinte mindenhez joguk van még akkor is, ha külön nem kaptak jogot. Ezeket a felhasználókat nem lehet törölni. A „Rendszergazda” felhasználó a szoftver használati jog birtokosának képviselője, egy „szuper felhasználó”. A használati jog birtokosa ezen a felhasználón keresztül tud új felhasználókat rögzíteni és kezdetben jogokat kiosztani. Az „admin” felhasználó elsődleges célja, hogy a fejlesztő (Szoftver Messiás Bt) gyorsan segítséget tudjon nyújtani olyan esetekben amikor egy helytelenül fölvett beállítás akadályozza az ügymenetet.

A felhasználó ablakon van két különleges fül, ahol adott felhasználó szerepkörökkel és csoportokkal való összerendelését lehet megnézni és módosítani:

Dbs user groups.jpg

A speciális "Rendszer" csoport tagjai rendszergazdák (joguk van szinte mindenre akkor is ha nem lett explicit módon nekik jog adva). A szoftver használati jog tulajdonosa saját hatáskörén belül ezen a csoporton keresztül létrehozhat több rendszergazda jogokkal rendelkező felhasználót. Kisebb cégeknél javasolt egyetlen rendszergazda felhasználó használata, mert így az adatmódosításból adódó károkozás felelőssége sokkal könnyebben megállapítható.

A felhasználók, szerepkörök és csoportok közötti kapcsolatokról bővebb információt alább talál.

Lásd még: SDITemplate Felhasználó ablak


Szerepkörök - jogosultságok csoportosítása

A szerepkörök a jogosultságok csoportosítására valók. A szerepköröknek egyedi neve van. Amikor az a kérdés hogy egy műveletet kinek van joga végrehajtani, akkor érdemes felhasználók helyett szerepkörökben gondolkodni. Ha például az Ön cégénél "Krisztián" egy raktáros, és az a kérdés hogy kinek van joga árut bevételezni, akkor "Krisztián" helyett érdemes egy "Raktáros" szerepkört használni, amihez "Krisztián" hozzá van rendelve. A szerepkör ablakon a szerepkör kiválasztása után egy külön fülön jelennek meg a hozzárendelt felhasználók. Itt lehet módosítani az adott szerepkörhöz tartozó felhasználók listáját:

Sdi role users.jpg

Ennek a megközelítésnek akkor mutatkozik meg az előnye, amikor Krisztián beteg lesz, szabadságra megy, felmond, vagy megváltozik a munkaköre. Valaki ("Béla") átveszi a helyét. Ha a jogok "Krisztián"-hoz lettek kiosztva, akkor az új dolgozó munkába állásához újra végig kell menni az összes ablakon és műveleten, és minden helyen ahol "Krisztián" jogosult volt, "Bélának" is meg kell adni ugyan azt a jogot. Az esetek többségében itt nem egyetlen jogosultságról van szó, hanem egy egész halom jogosultságról. Ebben a példában pl. a raktáros Krisztiánnak lehet hogy joga volt fölvenni/módosítani partnert, de törölni nem. Lehet hogy joga volt bevételezni árut, de eladni nem. Lehetett joga különféle állapot átmeneteket végrehajtani készlet változtató tranzakciókon stb. Ez egy hosszadalmas folyamat, könnyű eltéveszteni és rabolja az időt. Ha a jogok a "Raktáros" szerepkörhöz voltak kiosztva, akkor a jogosultságok újraosztását el lehet intézni azzal, hogy "Krisztiánt" kivesszük a "Raktáros" szerepkörből, "Bélát" pedig hozzáadjuk. Ezen a módon "Béla" nem közvetlenül, hanem a "Raktáros" szerepkörön keresztül kapja meg ugyan azokat a jogokat.

Egy felhasználónak több szerepköre lehet, és egy szerepkörhöz több felhasználó is tartozhat. A felhasználók és szerepkörök közötti kapcsolat a felhasználó oldaláról is megtekinthető és módosítható - lásd föntebb.

Lásd még: SDITemplate Szerepkör ablak


Jogosultság csoportok - felhasználók csoportosítása

A csoportok a felhasználókat csoportosítják. Egy csoporthoz több felhasználó tartozhat, és egy felhasználó több csoportnak is lehet tagja. Van egy beépített csoport „Mindenki” néven. Ennek minden felhasználó tagja, és a felhasználókat nem lehet ebből a csoportból eltávolítani. A "Mindenki" csoporton keresztül lehet megosztani dolgokat „Mindenkivel” azaz a rendszer minden felhasználójával. Az egy csoportba tartozó emberek közös folyamatokkal / üzleti objektumokkal foglalkoznak. A csoportok segítségével lehet megosztani ezeket a folyamatokat a csoporton belül. A csoport csak a folyamat elérésére jogosít föl. A folyamatok módosítására, adatok törlésére és módosítására a szerepkörök használhatók. A felhasználóknál megadható egy alapértelmezett csoport, az úgynevezett bejelentkezési csoport. Ez az a csoport amin belül a felhasználó elsődlegesen tevékenykedik. A jogosultság csoport ablakon van egy fül amivel meg lehet adni az adott jogosultság csoportba tartozó felhasználók listáját:


Dbs group users.jpg

Megszorítások:

  • A speciális "admin" csoportnak kizárólag a speciális "admin" felhasználó lehet tagja.
  • A "Rendszer" csoportnak legalább egy tagja van. A Rendszer csoport tagjai rendszergazdák. (Lásd följebb a felhasználók leírását.)
  • Rendszergazda felhasználó nem tudja saját magát kivenni a "Rendszer" csoportból.
  • A "Mindenki" csoportnak mindig minden felhasználó tagja. Új felhasználó felvitelkor automatikusan bekerül a "Mindenki" csoportba, és csak a felhasználó teljes törlésével távolítható el.


Lásd még: SDITemplate Jogosultság csoport ablak


Jogosultság ellenőrzések típusa

A jogosultságok ellenőrzése több szinten történik.

  • A rendszert csak az használhatja, akinek birtokában van egy aktív felhasználó neve és titkos jelszava. Ez az ellenőrzés a felhasználó azonosítása más néven authentikáció.
  • A legtöbb művelet típusra (pl. módosítás, törlés, új fölvétel stb.) jogosultságokat lehet meghatározni attól függetlenül, hogy mi a jogosultság tárgya (melyik konkrét adaton akarják elévezni). Például megadhatjuk hogy úgy általában ki tud partnert módosítani, függetlenül attól hogy melyik konkrét partnerről van szó. Ez az ellenőrzés az általános jogosultság kezelés.
  • Az üzleti objektumokra egyedileg lehet szabályozni a hozzáférést. Tehát pl. nem az összes partnerre általában, hanem egy konkrét partnerre. A hozzáférés korlátozása felhasználókon és szerepkörökön keresztül történik, és nem műveletekre (mint pl. módosítás vagy törlés) hanem konkrét adat tételekre (mint pl. "Spar Magyarország Kft" nevű partner) vonatkozik. Ez az egyedi jogosultság kezelés.
  • Egyéb speciális jogosultság kezelés keretében lehet jogokat osztani folyamatok irányítására, illetve - konkrét szoftvertől függően - más adattételekkel kapcsolatos különleges műveletekre.

Jogosultság kiosztása művelet típusokra általában - általános jogosultság kezelés

A felhasználói felületeken a műveletek nagy része gomb vagy hasonló vizuális elem formájában jelenik meg. Gombot kell nyomni új adat fölvételéhez, módosításhoz, törléshez adat exportáláshoz stb. Az adott vizuális elem meghatározza a művelet típusát (pl. törlés) és azt az egyedtípust amire a művelet vonatkozik. Például ha a törlés gomb a partner listát tartalmazó ablakon volt, akkor a partner egyedtípusra vonatkozó törlés műveletről van szó. Az ilyen műveletet kezdeményező gomboknál vizuálisan (jobb egér gombot nyomva) megjeleníthető egy felbukkanó ablak, ami az adott egyedtípus és művelet típus párhoz mutatja a kiosztott jogosultságokat. A jogosultságot szerepkörhöz lehet megadni, ezért ez a felbukkanó ablak egy szerepkör listát tartalmaz amiben pipálgatni lehet. A jogosultságot azok a felhasználók nyerik el, akik rendelkeznek engedélyezett szerepkörrel az adott műveletre és egyedtípusra. Az egyedtípushoz való megtekintés/listázás hozzáférést egy erre a célra kialakított gombbal lehet szabályozni, amivel az egész listázó/megjelenítő ablak megnyitását lehet engedélyezni vagy tiltani. Ha nincs megadva az engedély akkor az ablak nem nyitható meg, így a hozzáférés az összes egyedre (pl. összes szerződésre vagy összes partnerre stb.) tiltva van. A műveletekre általában véve a Rendszergazda és az admin felhasználó tud jogot osztani.