#1
| ||||
| ||||
Ideales Rechte-SystemSchon wieder ein Thema von mir (hoffentlich wirft mir niemand vor, dass ich spamme! ) Wie sollte man eurer Meinung nach ein idealews Rechte-Management-System für ein Forum umsetzen? Damit meine ich jetzt nicht, vom Umfang der Optionen (Kann posten, kann lesen, kann Umfragen erstellen,...), sondern ehr im Sinne von: - Soll jede Gruppe ein Standardrechte-System haben, dass dann vom jeweiligen Forum überschrieben wird oder - Wie werden die Rechte einem Board zugewiesen ? - Wie speichere ich das Ganze? Verschiedene Systeme gibt es ja genug! Ich weiß einfach nicht, wie ich es in meinem Forum machen soll, bitte helft mir! __________________ Fabian Michael "Ein Tag, an dem du nicht lächelst, ist ein verlorener Tag." - Charlie Chaplin Wiki |
#2
| ||||
| ||||
naja ich kann derzeit nicht genaues sagen... ich sage mal eine Mischung zwischen dem vBulletin (3) und dem wBB 2.1 Rechtesystem, das ist schon ideal. __________________ Frederic Schneider WoltLab Team / WoltLab Wiki / GamePorts / Frederic Schneider / neuer-patriotismus.de |
#4
| ||||
| ||||
Ich habe es in meinem aktuellen Entwurf so gemacht: Es gibt für jede Gruppe einen Eintrag in der DB der festlegt was für Rechte sie normalerweise in den Foren haben sollten. Dann können für jedes Forum nocheinmal extra Rechte gesetzt werden. Das geht sowohl für einzelne Benutzer als auch für ganze Gruppen. Wobei in diesem Fall ein Forum immer die Rechte vom vorhergehenden erbt. Edit: Rechte die einem Benutzer erteilt werden haben eine größere Gewichtung als die der Gruppe. Wurde für ein Forum für Gruppe als auch Benutzer unterschiedliche Rechte gesetzt. Werden die vom Benutzer genommen __________________ Fabian Martin Fabian Martin Blog | Twitter | XING |
#5
| ||||
| ||||
Zitat:
__________________ Fabian Martin Fabian Martin Blog | Twitter | XING |
#6
| ||||
| ||||
@DaddyCool: Das mit den mehreren Benutzergruppen ist anscheinend in letzter Zeit sowieso die letzte Mode! Auf jeden Fall danke für die Hilfe! __________________ Fabian Michael "Ein Tag, an dem du nicht lächelst, ist ein verlorener Tag." - Charlie Chaplin Wiki |
#7
| ||||
| ||||
Ich habe mri jetzt folgendes überlegt: Jede Benutzergruppe bekommt Standardrechte zugewiesen und zwar in der selben Tabelle, in der sie gespeichert ist. Tabelle: user_group Jeder Benutzer kann in beliebig vielen Gruppen sein, daher benutze ich noch eine Tabelle, um die User mit den Gruppen zu verknüpfen. Dabei bekommen alle Rechte immer den maximalen Wert zugewiesen, der in den Gruppen, denen der User angehört zu finden ist! Beispiel: User Admin0815 ist in folgenden Gruppen: Mitglieder (can_use_acp = 0), Administratoren (can_use_acp = 1), Moderatoren (can_use_acp = 0) Daher ist es ihm möglich, das ACP (Admin Control Panel) zu nutzen. Wenn ein Bereich (zB ein Forum) andere Rechte gesetzt hat, werden die den Users überschrieben. Ich weiß nur noch nicht, wie ich es speichern soll, wenn eine Berechtigung keinen Wert zugewiesen hat und stattdessen einen Standardwert benutzt! Wie könnte man sowas machen? Als NULL vielleicht? Oder als 0=nein, 1=ja, 2=unset ? __________________ Fabian Michael "Ein Tag, an dem du nicht lächelst, ist ein verlorener Tag." - Charlie Chaplin Wiki |
#9
| ||||
| ||||
@DaddyCool: WIeso bin ich da nicht gleich drauf gekommen? Vielen Dank! Kann ich das auch in ein TINYINT (1) Feld ganz normal eintragen? __________________ Fabian Michael "Ein Tag, an dem du nicht lächelst, ist ein verlorener Tag." - Charlie Chaplin Wiki |
#11
| ||||
| ||||
Okay, dann werde ich es so machen, dass das Array mit den User-Rechten erst mit den Daten aus seinen Gruppen gefüllt werden und dann alle Werte, die noch nicht gesetzt sind (bzw. auf -1 stehen) mit Standarddaten gefüllt werden! Das sollte eigentlich keinerlei Sicherheitsmängel beinhalten oder probleme darstellen oder irre ich mich? __________________ Fabian Michael "Ein Tag, an dem du nicht lächelst, ist ein verlorener Tag." - Charlie Chaplin Wiki |
#13
| ||||
| ||||
Hi @ll Ich habe vor längerer Zeit auch ein Rechte System entwickelt, dies geht noch a bissal mehr in die Tiefe. Wie erkläre ich das am Besten?? Also: Ein User ist in einer oder in mehrern Rollen. diese Rollen beinhalten eine oder mehrere Gruppen Eine Gruppe hat rechte auf eine bestimmte Funktion. Auf eine Funktionen gibt es Rechte: Read, Insert, Modify, Delete Beispiel: Es gibt die Rolle Redakteur Diese hat mehrere Gruppen zB News-Redakteur, Termine-Red... da es ein Redakteur ist, hat er lesen, Einfügen- Rechte. Warum das ganze?? Damit man nicht jeden User die Rechte vergeben muss, bildet man Gruppen, und schliesst diese in Rollen zusammen. So erspart man sich viel Zeit beim neuanlegen eines Users. Um das ganze noch zu versüssen, hab ich zusätzlich die Möglichkeit, den User Sonderrechte einzuräumen. Das bedeutet nicht umbediengt, das er mehr kann, sonder das sind Sonderregeln, die nur diesen User betreffen. Hier kann ich einen User zB noch das Löschen Recht auf eine Funktion geben, welches er über die Gruppe bzw. Rolle nicht hätte. Andersrum kann ich ihm auch das Recht entziehen, obwohl er es hätte. Das ganze kann man mit einen Redaktion-System einer Zeitung vergleichen. __________________ Sven-Marcus Maderbacher Cu l8er Nev the XxX Projekte: www.Nev-Hilft.de die Seite für Coder Master of www.Burnworld.de |
#14
| ||||
| ||||
@Nev erinnert mich stark an das Schema das z.B. das vB3 und gerüchteweise auch das WBB2.1.schiessmichtod nutzen. Dort kann man Gruppen zwar nicht zusammenfassen, einem Benutzer jedoch mehreren Benutzergruppen zuordnen. Ist zwar nicht so komfortabel, sollte aber den gleichen Effekt haben. __________________ Fabian Martin Fabian Martin Blog | Twitter | XING |
#15
| ||||
| ||||
Hi @gain Mein Rechte-System gibt es schon etwas länger knapp 2 Jahre. __________________ Sven-Marcus Maderbacher Cu l8er Nev the XxX Projekte: www.Nev-Hilft.de die Seite für Coder Master of www.Burnworld.de |
#16
| |||
| |||
Mal sehen ob ich das richtig verstehe... Man definiert gewisse Aktionen: - lesen - schreiben - editieren - löschen Dann erstellt man Gruppen und vergibt diesen die Rechte an gewissen Aktionen: - Autor: lesen, schreiben - Moderator: editieren, löschen, lesen, schreiben - Benutzer: lesen Und nun nehmen wir mal das Beispiel Forum. Wie vergebe ich dann diese Rechte getrennt für die Boards? Gruppen den Boards zuweisen und über die entsprechende Gruppe die Berechtigung erhalten? Links zu eigenen Themen, die sich auch um ein rechtesystem drehen: http://boardunity.de/rechtesystem-au...auf-t3790.html http://boardunity.de/eigenes-cms-mod...bau-t3913.html |
#17
| ||||
| ||||
Hi eBoy Ich fühle mich mal angesprochen Beispiel für ein Forum: Als Gast bekommst du generell das Kennzeichen Read dies erlaubt den Besucher, alles zu lesen Jedes Board ist wie ein Modul zu sehen. d.h.: Der Besucher muss in der Gruppe (Board) sein, und dort das Recht Lesen ansonsten darf er nicht hinein. dadurch kannst du auch den Gast wieder aussperren. Der registrierte Besucher Hat neben dem Recht: Read auch Modify d.h. er darf auch seine Beiträge löschen. Die Gruppen ist eine Zusammenfassung von Rechte. Ein User kann in mehreren Gruppen sein. Wobei sie zusammen ein gesamtes Recht defineren. Ich hab vor längerer Zeit mal einen Text geschrieben, siehe attachment __________________ Sven-Marcus Maderbacher Cu l8er Nev the XxX Projekte: www.Nev-Hilft.de die Seite für Coder Master of www.Burnworld.de |
#18
| |||
| |||
Diese Gruppen wären dann vergleichbar mit einer Rechte-Datenbank, die für gewisse Aktionen die Rechte an die Gruppen vergibt. In diesen Gruppen muss der User dann Mitglied sein, um die entsprechende Aktion ausführen zu können. Wobei diese Gruppen dann nichts mir den "Gruppen" zu tun hätte, die als Hauptgruppe angezeigt wird (Gruppenmitgliedschaft nach z.B. geschriebenen Beiträgen). Text habe ich heruntergeladen und werde ich mir durchlesen, danke |
#19
| |||
| |||
Das ganze sieht für mich wie ein einfaches Rechtesystem mit Gruppen- und Benutzerrechten... Was hat es dann in kurzen Worten mit den "Rollen" auf sich? |
#20
| ||||
| ||||
ein einfaches Rechtesystem mit Gruppen- und Benutzerrechten geht ned so in die Tiefe, mit den Rechten (Read, Insert, Modify, Delete) es ist angelehnt am Unix-Rechte-System Die Rolle dient nur zur Unterstützung. diese kann man definieren um sich die gesamten Zuweisungen für einen User zu ersparen is quasi eine Schablone. Zusätzlich, was in dem Text ned rausgekommen ist, kannst du den User obwohl er die Rechte aus der Rolle hat, Rechte entziehen bzw. ihm auch Sonderrechte einräumen, die ausser halb seiner Rollen liegen. So kannst du obwohl du Rollen vergibst, jeden noch zusätzlich anpassen. __________________ Sven-Marcus Maderbacher Cu l8er Nev the XxX Projekte: www.Nev-Hilft.de die Seite für Coder Master of www.Burnworld.de |
#21
| ||||
| ||||
Zitat:
__________________ Yves Goergen Softwareentwicklung, Fotografie, Webhosting, UNB Components (in Arbeit) |
#22
| |||
| |||
Ich würde das mal so beschreiben/ machen: Zugriffsrechte für Modul (z.B. in der Table "module") => grundlegendes Zugriffsrecht Zugriffsrecht für Kategorie (z.B. Rechte-Table des Modules) => Darf der User, der das Modul betreten darf auch diese Kategorie betreten? Berechtigung für Aktionen => Darf der User schreiben, (eigenes) editieren, (fremdes) moderieren oder gar administrieren? Dazu noch global-Admin als Gruppe => besitzt alle Rechte ich finde dein Rechtesystem nicht unbedingt schlecht, aber zu kompliziert, weshalb ich es auch nicht zu 100% verstehe... Dazu würde ich versuchen das ganze einfach zu halten, also die Parameter (Rechte des Users/ der Gruppe und Voraussetzungen) nicht in der rechte-Klasse laden, sondern übergeben. Dann kann man die Funktion für die Zugriffsrechte für Module UND Kategorien für beides verwenden. Ich muss mir da mal weitere Gedanken dazu machen |
#23
| ||||
| ||||
Hi @gain Der Ansatz is eine Anregung, ned das Gelbe vom Ei Jeder hat andere Anregungen bzw. Bedürfnisse. Bisher hab ich mit dem System einfach alles abdeken können. __________________ Sven-Marcus Maderbacher Cu l8er Nev the XxX Projekte: www.Nev-Hilft.de die Seite für Coder Master of www.Burnworld.de |
#24
| |||
| |||
Es ist mir auch sehr hilfreich gewesen. Werde da einige meiner Ideen überdenken müssen und schauen, wie ich das Optimum für mich rausholfen kann. |
#25
| |||
| |||
Berechtigungen die ich wohl benötige: - lesen (Zutritt) - schreiben - editieren (eigene) - löschen (eigene) - editieren (alle) - löschen (alle) So kann ich auch Mderatoren und Administratoren realisieren. Die User werden in Gruppen organisiert. Dieses System ist universell und beliebig erweiterbar. Man muss die Klasse/ Funktion nur erneut aufrufen und die zu prüfenden Daten und die Voraussetzungen mitübergeben. Das ware wenig Code und universell einsetzbar... denke/ hoffe ich |
Stichworte |
- |
Ähnliche Themen | ||||
Thema | Autor | Forum | Antworten | Letzter Beitrag |
Wie findet Ihr das System? | Kitilop | Entwicklung und Konzeption sozialer Software | 1 | 06.03.2005 16:17 |
BlackBoard Internet Newsboard System 1.5 | LonelyPixel | Forensoftware | 21 | 24.12.2004 00:54 |
Suche CMS System | Daniel Richter | Blog, CMS, Wiki und Sonstige | 26 | 06.04.2004 02:40 |
Forum mit Content Management System vorgestellt | Eike | Projektvorstellung und Bewertung | 6 | 15.02.2004 22:07 |