Jump to content
Sign in to follow this  
k00ni

Zuständigkeitsabfragen von Rechten

Recommended Posts

Hallo,


wo fragt man am Besten die Rechte eines Users ab? Darunter zählt auch dessen Rang, ob User, Mod oder Admin.


Die Frage ist, in der SQL-Abfrage oder im Skript? In der SQL-Abfrage könnte man gut verknüpfen, aber möchte man sich jede Abfrage mit soetwas aufweichen? Wäre es nicht sinnvoller vieles per Skript abzufrage, wenn nötig zu blocken und bei einem Erfolgsfall, die Abfrage abzusetzen?


Bei großflächigen Abfragen, wie der Suchfunktion sehe ich ein, dass es da sinnvoller ist, das in die Abfrage einzubauen. Aber wie schauts beim Lesen von PM's oder dem Zutritt in bestimmte Bereiche aus ?!



Grüße

Share this post


Link to post
Share on other sites

Rechtesystem von Powie. An sich gibt es keine einzelnen Rechte, nur die Abfrage vom Rang, also User, Mod oder Admin. Hatte mich da etwas missverständlich ausgedrückt.


Der Fakt mit dem Userrang oben und ob der User bspw. der Besitzer von etwas ist (Abfrage per ID) oder zu etwas gehört (bspw. Usergruppe), sind die Dinge, die mich interessieren. Wo genau fragt man das ob, im PHP-Skript oder in der abgesetzten SQL-Abfrage.



Grüße

Share this post


Link to post
Share on other sites

Antwort: Sowohl als Auch!


Verschieden Dinge bekommst du in $user[] bereits zur Verfügung gestellt, da musst du in keiner Art und Weise mehr etwas abfragen. Die einzigste notwendige Abfrage passiert bei den Gruppen im Forum.

Ich denke du solltest mit deiner Frage mal etwas weiter ausholen und vielleicht an einem Beispiel erläutern was du als Antwort erwartest.

Share this post


Link to post
Share on other sites

Hallo,


Beispiele... mal schauen. :)


Beispiel 1 - PMs: Man kann als User nur die PMs sehen, die man selbst empfangen oder geschrieben hat. Wo frage ich das ab? Hier habe ich die Abfrage in den Join gelegt, da man damit gleich alles in einem hat.



Beispiel 1 - Zutritt zu ACP-Bereichen: Möchte man in den ACP rein, so muss man vom Typ Administrator sein oder bei uns in der Galerie, geht dass auch, wenn man einer bestimmten Usergruppe angehört. Wo frage ich ab, ob der User einer Gruppe angehört oder was für einen Rang (User, Mod, Admin) er hat? Ich selbst löse dass per if-Abfrage (plus $user['typ'] == 'admin') bzw. einer eigenen Funktion für die Abfrage der Usergruppenzugehörigkeit.



Ich hoffe die beiden Beispiele zeigen in ungefähr, was ich meine. Ich suche keine Pauschallösung, sondern eher ein paar Denkanstöße, wie man sowas in Zukunft regeln könnte. Auf uns kommt bald ein Modul zu, wo auch User administrative Aufgaben erledigen und auf Systemkomponenten Zugreifen können (Kalender). Spätestens dann würde ich sowas einfließen lassen.



Grüße

Share this post


Link to post
Share on other sites

1: Wozu benötigt man da einen Join? Die ID des User ist in der $user['id'] vorhanden, und diese steht in der PM im Feld touser. Somit genügt ein einfaches Where touser = $user['id']


2: Würde ich auch nicht anders machen, wenns umfangreicher wird dann halt in einer func kapseln, siehe AccessGalerie()

Share this post


Link to post
Share on other sites

Bei 1 muss ich einen Join machen, da ich sowohl die PM Informationen abfrage, als auch die Infos zum Schreiber der PM. Damit habe ich alles in einer Abfrage, inklusive der Abfrage, ob der User überhaupt darf oder nicht.



Grüße

Share this post


Link to post
Share on other sites
Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

×
×
  • Create New...