Hoofdcategorieën
Topicacties

[PHP/SQL] Ideale rechtensysteem

Pagina: 1

Reageer Nieuw Topic
Ik zit momenteel te zoeken op een manier om rechten op de meest flexibele manier op te slaan.

Ik had dit in gedachten:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
rights
- id
- name
- scriptname ("add_article", "post_new_forum_topic", etc.)
- type (default boolean, maar int/float ook mogelijk)

groups
- id
- name
- eventueel extra kolommen m.b.t. het erven van rechten e.d.

rightgroups
- rightid
- groupid
- value (1/0, of andere nummertjes)

usergroups
- userid
- groupid

Ik denk dat dit redelijk flexibel is, maar je loopt toch weer tegen enkele limitaties op: Bijvoorbeeld bij het uitdelen van rechten per forum: User X mag wel topics verplaatsen, maar user Y mag dit niet. User Z mag dit ook niet, maar wel in forum 1 en 2.

Wat raden jullie aan om voor bovenstaand probleem te gebruiken? Of is er nog iets mis aan de database structuur?

Acties: [view][quote]


Door: RobIII
Moderator PRG/SEA/WEB
Papa van LucaIII \o/

Kijk eens naar RBAC: Wikipedia: Role-based access control
Waarom het wiel voor de 200.000ste keer opnieuw uitvinden? ;)

Verder: waarom lijk je de search telkens te missen? En nu je de juiste term/afko hebt: RBAC. Voila.

RobIII wijzigde dit bericht 07-04-2008 11:01 (89%)

We all get along with some glue and duct tape here and there - but when the sh*t hits the fan, don’t blame the duct tape.

Trotse papa van Luca! | Pick My Icon!

quote:
RobIII schreef op maandag 07 april 2008 @ 10:57:
Kijk eens naar RBAC: Wikipedia: Role-based access control
Waarom het wiel voor de 200.000ste keer opnieuw uitvinden? ;)

Verder: waarom lijk je de search telkens te missen? En nu je de juiste term/afko hebt: RBAC. Voila.
De search heb ik wel gevonden hoor. ;) Maar wat ik daar vind voldoet eigenlijk niet. Het is allemaal een beetje vaag uitgelegd. En de meeste oplossingen die worden aangereikt zijn niet echt netjes qua implementatie. Ik kom ook iets van RBAC tegen op SitePoint: http://www.sitepoint.com/forums/showthread.php?t=162027 een hele discussie hierover, maar ze zijn op een gegeven moment opgehouden. Wel jammer, want dat is de enige (gedeeltelijke) implementatie die ik kan vinden hierover.

Acties: [view][quote]


Door: -NMe-
Admin DevschuurŽ
Watching you I am.
Berichten: 27.956
Reg. datum: 25 februari 2004

Op de eerste pagina bij zoeken bij google naar 'rbac php implementation':
As of 10th April 2006 the software discussed in this article can be downloaded from www.radicore.org

"The Assassin moved quietly from roof to roof. His movements could be called cat-like, except that he did not stop to spray urine up against things."
De Tweakers.net Tijdlijn

Ik zit er zelf ook wat informatie over te zoeken en dit is wel een interessant topic over RBAC: http://www.sqlrecipes.com...ss_control_rbac_system-3/

Hier heeft iemand zelf al wat in elkaar gezet qua database design.

Acties: [view][quote]


Door: RobIII
Moderator PRG/SEA/WEB
Papa van LucaIII \o/

Als je nou eens begint met zelf een poging te doen in plaats van vragen voor kant-en-klare oplossingen; dat is hier in de DevSchuur namelijk niet de bedoeling. Concrete vragen zijn altijd welkom als je ergens vastloopt of vragen over hebt, maar dit gaat toch echt te ver.

Overigens staat er notabene een compleet ontwerp in de link die je zelf post :D

RobIII wijzigde dit bericht 07-04-2008 13:33 (39%)

We all get along with some glue and duct tape here and there - but when the sh*t hits the fan, don’t blame the duct tape.

Trotse papa van Luca! | Pick My Icon!

Berichten: 219
Reg. datum: 14 augustus 2001

quote:
RobIII schreef op maandag 07 april 2008 @ 13:32:
Als je nou eens begint met zelf een poging te doen in plaats van vragen voor kant-en-klare oplossingen; dat is hier in de DevSchuur namelijk niet de bedoeling. Concrete vragen zijn altijd welkom als je ergens vastloopt of vragen over hebt, maar dit gaat toch echt te ver.

Overigens staat er notabene een compleet ontwerp in de link die je zelf post :D
Slecht geslapen jongen?
Ik heb er ook eens naar gezocht en om nu echt een goede handleiding te vinden is mij ook nog niet gelukt.

Al komt die sqlrecipes aardig in de buurt.

a life?? Where can i download it??


Acties: [view][quote]


Door: RobIII
Moderator PRG/SEA/WEB
Papa van LucaIII \o/

quote:
Helemaal niet, maar moet ik er jou ook nog eens op wijzen?
scriptrequest
Registratievoorwaarden / korte FAQ
quote:
Ruffian schreef op maandag 07 april 2008 @ 13:39:
[...]
Ik heb er ook eens naar gezocht en om nu echt een goede handleiding te vinden is mij ook nog niet gelukt.

Al komt die sqlrecipes aardig in de buurt.
Er is meer dan voldoende te vinden als je even googled. Daarbij is RBAC geen rocket science en is met een beetje SQL kennis prima zelf zo'n systeem te verzinnen danwel op te zetten.

We all get along with some glue and duct tape here and there - but when the sh*t hits the fan, don’t blame the duct tape.

Trotse papa van Luca! | Pick My Icon!

Berichten: 1.373
Reg. datum: 17 augustus 2000

quote:
l0c4lh0st schreef op maandag 07 april 2008 @ 10:56:
...
Ik denk dat dit redelijk flexibel is, maar je loopt toch weer tegen enkele limitaties op: Bijvoorbeeld bij het uitdelen van rechten per forum: User X mag wel topics verplaatsen, maar user Y mag dit niet. User Z mag dit ook niet, maar wel in forum 1 en 2.
...
Ik ben wel benieuwd waarom user Z in forum 1 (en 2) wel posts mag verplaatsen. Is hij bijvoorbeeld eigenaar? Je kan daarvoor een aparte set regels bedenken en bijbehorende rechten voor de eigenaar. Anders dan krijg je een vermengeling van RBAC en individuele rechten op items (zoals een forum). Kan wel, maar je haalt jezelf wel een boel extra werk op de hals.

Je kunt individuele rechten wel simuleren trouwens: Iedere user die wordt aangemaakt wordt in een groep die alleen voor hem is geplaatst. Deze groep kun je vervolgens rechten geven en afnemen. Maar goed, dit beschrijven alleen al laat een licht vieze smaak achter in mijn mond :)
 
Berichten: 59
Reg. datum: 11 december 2006

 

Acties: [view][quote]


Door: RobIII
Moderator PRG/SEA/WEB
Papa van LucaIII \o/

quote:
Als je maar zorgt dat TS er ver vandaan blijft :P
Dit soort systemen werken leuk als het aantal rechten van te voren vastgelegd is en er niet meer dan X rechten zijn en nooit zullen komen. In dit soort gevallen loop je al snel tegen max 32 of 64 rechten aan (32 of 64 bits in een long/big/whatever-int); in een beetje rechtensysteem heb je dit soort (onnodige!) beperkingen niet.
Met jouw suggestie ga je al heel snel in de problemen komen als je (bijv.) users, administrators, powerusers en een stuk of 10 fora hebt waarin je read/write/delete/etc. rechten op wil instellen.

RobIII wijzigde dit bericht 07-04-2008 16:13 (14%)

We all get along with some glue and duct tape here and there - but when the sh*t hits the fan, don’t blame the duct tape.

Trotse papa van Luca! | Pick My Icon!

Pagina: 1



VNU Media logo Powered by True

© 1998 - 2008 Tweakers.net - Alle rechten voorbehouden

Uitgever van: