phpbar.de logo

Mailinglisten-Archive

[php] Berechtigungs System

[php] Berechtigungs System

Florian Strauß hackfrag at ff-scene.de
Son Feb 1 15:31:04 CET 2004


Michael Schoenboeck schrieb:

>Hi,
>
>Also ich hab das anders gelöst:
>Ich verwende eine art rechte Strings, die so ca. ausehen:
>
>$user_acl = 100101101001|4
>
>Diese ist bei jedem user gespeichert.
>Dann habe ich ein inc.file wo in etwa sowas din steht:
>$acl_login			= $user_acl[0];
>$acl_address_db		= $user_acl[1];
>$acl_address_db_new	= $user_acl[2];
>$acl_address_db_edit	= $user_acl[3];
>$acl_address_db_delete	= $user_acl[4];
>...
>Bei dem $user_acl ist 1 = darf und 0 = darf nicht
>Also in dem beispiel darf sich der user einloggen weil $acl_login auf 1
>steht.
>Jetzt brauch ich nur noch abfragen ob $acl_login == 1 ist...
>
>Mit dem | am ende trenne ich lediglich die eigentliche ACL von einer gruppen
>zugehörigkeit, weil ich die zahl hinter dem | einer gruppe zugeordnet habe.
>Wenn diese auf 0 steht heist das das dieser user individuelle rechte hat und
>nicht in einer default gruppe ist.
>
>Das hat den vorteil das ich die acl ohne weiteres belibig erweitern kann.
>Bzw. wenn ich was an den gruppen rechten ändere diese auch gleich auf alle
>user anwenden kann, auser diese die individuelle rechte haben.
>
>Ich hoffe das hilft weiter?
>
>Lg
>michael
>
>  
>
Hallo Michael,
find ich nen nettes System. Aber wenn ich nun  70-90 Einzelne 
Berechtigung hab ? Wird das dann nicht etwas unübersichtlich  zB. wenn 
eine Berechtigung rausfällt und gelöscht werden muss?
Ich kenn das noch mit Benutzer Level zB. wenn UserXY userLevel größer 
ist als 20 darf er News löschen, das ganze ist aber nicht sehr variabel :(

gruß Florian

-- 
Homepage : http://www.floriansweb.com
Web Blog : http://blogs.floriansweb.com
E-Mail   : hackfrag at ff-scene.de

Nichts ist so wie es scheint!


php::bar PHP Wiki   -   Listenarchive