Permissie systeem via database voor forum

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Ventilatiesysteem Productontwikkelaar HBO WO Verwa

Samengevat: Zij bieden flexibele ventilatiematerialen, geluidsdempers, rookgasafvoer producten en industrieslangen. Ben jij een technisch productontwikkelaar? Heb jij ervaring met het ontwikkelen van nieuwe producten? Vaste baan: Technisch Productontwikkelaar HBO WO €3.000 - €4.000 Zij bieden een variëteit aan flexibele ventilatiematerialen, geluiddempers, rookgasafvoer producten, industrieslangen en ventilatieslangen voor de scheepsbouw. Met slimme en innovatieve materialen zorgen wij voor een gezonde en frisse leefomgeving. Deze werkgever is een organisatie die volop in ontwikkeling is met hardwerkende collega's. Dit geeft goede ontwikkelingsmogelijkheden. De branche van dit bedrijf is Techniek en Engineering. Functie: Voor de vacature als Technisch Productontwikkelaar Ede Gld HBO WO ga

Bekijk vacature »

Steef

Steef

03/10/2008 17:09:00
Quote Anchor link
Hallo PHPhulp,

Ik heb nu al een aantal uren zitten denk hoe ik op een beste manier een database opstelling kan maken voor een forum en permissies.

Ik zal effe uitleggen wat ik nu heb:

gebruikerslijst met ranknummer (verwijst naar rankenlijst)
rankenlijst met groepnummer (verwijst terug naar groepenlijst)
groepenlijst

Ik kom zelf niet op de manier hoe ik de database moet opzetten voor de permissies op het forum per (sub)categorie. Alle categorien worden in 1 database tabel gezet.

Nu wil ik per categorie aangeven welke rank/groep toegang krijgt tot het forum met de volgende mogelijkheden:
lezen, schrijven, aanpassen, verwijderen

Wie kan mij helpen het met datamodel of heeft voor zijn eigen forum een goed permissie systeem. Ik heb al zitten kijken naar het phpBB permissie systeem alleen daar snap ik geen *piep* van.

EDIT:
Ik wil graag ook ranken en groepen kunnen toevoegen, maar zelf weet ik al wel hoe dat moet, maar daar moet ook nog rekening mee gehouden worden.
Gewijzigd op 01/01/1970 01:00:00 door Steef
 
PHP hulp

PHP hulp

19/05/2024 16:02:29
 
Emmanuel Delay

Emmanuel Delay

03/10/2008 22:59:00
Quote Anchor link
Je zou een koppeltabel kunnen maken met de velden id_gebruiker, permissie.
De betekenis van permissie kan dan in een andere tabel komen.

Je zou ook bij de gebruiker een profiel veld kunnen toevoegen. In een andere tabel leg je dan uit welke permissie overeen komt met welke permissies.
Bv. admin = alle permissies, moderator = ..., gebruiker = ...
 
Frank -

Frank -

03/10/2008 23:18:00
Quote Anchor link
rollen:
- id
- naam

rol_permissie:
- id_rol (foreign key op id in tabel rollen)
- id_permissie (foreign key op id in tabel permissies)

permissies
- id
- naam

En klaar is Kees.

Oh ja, de gebruiker, die geef je 1 (één) rol:
users:
- id
- id_rol (foreign key op id in tabel rollen)
- naam
 
Steef

Steef

04/10/2008 10:40:00
Quote Anchor link
Hoe kan ik de manier van pgFrank het beste combineren met de verschillende categorien?
 
Jens V

Jens V

04/10/2008 14:50:00
Quote Anchor link
@Frank:
Is het niet makkelijker dan om bitwise te werken?
 
Frank -

Frank -

04/10/2008 15:00:00
Quote Anchor link
Jens schreef op 04.10.2008 14:50:
@Frank:
Is het niet makkelijker dan om bitwise te werken?
En dan mag jij gaan uitzoeken welke rechten er nu precies bij 1 horen en waarom 0 problemen geeft.

Er is geen touw aan vast te knopen, het is dikke ellende en eigenlijk alleen bruikbaar wanneer je niet meer en NOOIT meer dan 2 á 3 rechten hebt. Maar die situatie komt maar zeer, zeer zelden voor, bitwise is dus eigenlijk altijd een beroerde oplossing. En ja, ik heb er ruime ervaring mee en weet 200% zeker dat ik hier nooit meer mee wil werken. De meest vage bugs en andere problemen zijn je deel.

Wanneer iemand rol A heeft en in deze rol zit het recht 'aanmaken bericht' of 'bekijken categorie X', dan kun je vrij eenvoudig een vergelijking maken wanneer deze functionaliteiten worden aangeroepen.

Bij het inloggen van een persoon, vraag je dus zijn rol en bijbehorende rechten op.

Uiteraard kun je dit ook op database-niveau gaan regelen, maar dan wordt het wel wat complexer doordat je heel nauwkeurig per rol de juiste rechten met GRANT en REVOKE moet gaan instellen. Dat is niet iets voor beginners.

Tip: Google eens op het begrip RBAC.
 
Steef

Steef

04/10/2008 15:33:00
Quote Anchor link
@pgFrank, ik maak nu ook geen gebruik van bitwise, alleen ik heb jou raad allemaal opgevolgd. Alleen nu zit ik met een volgend probleem: http://www.phphulp.nl/forum/showtopic.php?cat=12&id=56499&lasttopic=1
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.