kleine Rechteverwaltung für Webseite
inspiron
- php
0 Tom0 Beat0 inspiron
0 Brillo Agent Nr. 10 hotti
Hallo,
ich möchte eine kleine Rechteverwaltung für eine Webseite erstellen und brauche Hilfe.
Was habe ich:
Login mit Session & Mysql
Tabelle: "benutzerdaten"
(Id, Nickname, MD5-Kennwort, Nachname, Vorname, Rechte)
1, admin, , , , 1
2, user1, , , , 2
3, user2, , , , 4
4, user3, , , , 3
index.php (login)
seite_a.php
seite_b.php
seite_c.php
seite_d.php
Menü:
Home - Seite A - Seite B - Seite C - Seite D
Ich möchte:
das user1 die seite_a & seite_b aber nicht die seite_c & seite_d sehen darf. Das Menü soll so bestehen bleiben wenn user1 auf "Seite D" klickt = kein Zugriff!
Eine Idee währe, jede Seite mit einer Kennung (1-5) zu versehen und diese dann mit Rechte aus Tabelle "benutzerdaten" vergleichen
Hat das Sinn?
Es soll eine einfache Verwaltung (Betriebsintern für ca.30 Personen)werden.
Gruß
Hello,
Ich möchte:
das user1 die seite_a & seite_b aber nicht die seite_c & seite_d sehen darf. Das Menü soll so bestehen bleiben wenn user1 auf "Seite D" klickt = kein Zugriff!
Bevor Du anfängst zu programmieren, denk noch ein bisschen weiter, was die User alles dürfen sollen. "Sehen" einer Seite ist sicherlich nur ein einziger Punkt von vielen, die Du berücksichtigen solltest.
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg
Eine Idee währe, jede Seite mit einer Kennung (1-5) zu versehen und diese dann mit Rechte aus Tabelle "benutzerdaten" vergleichen
Hat das Sinn?
Es soll eine einfache Verwaltung (Betriebsintern für ca.30 Personen)werden.
Grundsätzlich hast du zwei Arten von Datentypen:
Entscheidend ist nicht, welche URL ich aufrufen kann, sondern ob eine Datenbankabfrage vorher die Rechte prüft, bevor sie Daten ausliefert.
Zum Beispiel kann ich als Benutzer X durchaus eine Seite von Benutzer Y aufsuchen, ich sollte aber dort nur die Information sehen, die für meine Benutzergruppe öffentlich ist.
Die Rechte musst du also mit den Daten, nicht mit URIs verwalten.
mfg Beat
Entscheidend ist nicht, welche URL ich aufrufen kann, sondern ob eine Datenbankabfrage vorher die Rechte prüft, bevor sie Daten ausliefert.
Die Rechte musst du also mit den Daten, nicht mit URIs verwalten.
mfg Beat
Genau das sind die richtigen Hinweise!
Ich werde es morgen versuchen umzusetzen. Großen Dank
Gruß
Hi
Eine Idee währe, jede Seite mit einer Kennung (1-5) zu versehen und diese dann mit Rechte aus Tabelle "benutzerdaten" vergleichen
Irgendwie musst du die entsprechende Resource ja kennzeichnen. Wie und wo du das machst, bleibt dir überlassen. Sicher hat jede Variante Vorteile bzw. Nachteile.
Brillo
hi,
Irgendwie musst du die entsprechende Resource ja kennzeichnen. Wie und wo du das machst, bleibt dir überlassen.
Da gibts eigentlich nur eine Antwort, _wo_ die Kennzeichnung erfolgt:
In der Projektverwaltung
Wo denn sonst ;-)
Ich orientiere mich da an den Unix Dateiattributen, Owner, Group, Other, sowie die entsprechenden Bits für Lesen und Schreiben.
Hotti