Ankündigung

Einklappen
Keine Ankündigung bisher.

[PHP 5.3 & MySQL] Rechteverwaltung

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • 3logy
    hat ein Thema erstellt [PHP 5.3 & MySQL] Rechteverwaltung.

    [PHP 5.3 & MySQL] Rechteverwaltung

    Hallo @alle,

    ich bin dabei ein System zu schreiben und wollte dabei zum beispiel an Projektteams rechten zuweisen(siehe bild).

    So jetzt frage ich mich :
    - ob mein einsatz so nachvollziehbar ist
    - kann man es so ins PHP ohne problemen umsetzen?
    Angehängte Dateien

  • nikosch
    antwortet
    Nö, eigentlich nicht. Weil das keine Normalform darstellt.

    Einen Kommentar schreiben:


  • 3logy
    antwortet
    okay nachdem ich die ganze beiträge(diese anschliessend) gelesen habe, muss ich gestehen einer Trennung von Gruppen und Rollen ist ziemlich vorteilhafter.

    Also in einem Tabelle die rechte und die rollen zu vereinen wäre auch in ordnung oder?

    Code:
    Tabelle : Rechte
     id | role          | lesen | schreiben | loeschen
     1    Autor            1          1            1
     2    Mitarbeiter      1          1            0
     3    Gast             1          0            0

    Einen Kommentar schreiben:


  • 3logy
    antwortet
    Zitat von BlackScorp Beitrag anzeigen
    users:
    id | username | pw | email
    1 | hanswurst | 123456 | hans@wurst.de

    rechte
    userId | rights
    1 | 0
    1 | 1
    1 | 100
    warum hat bei dir user 1 mehrere rights???

    Danke das schaue ich mir noch genauer an!!


    Zitat von xm22 Beitrag anzeigen
    Ich halte die Trennung von Gruppen und Rollen für sehr theoretisch und abstrakt. Mir würde jetzt kein Anwendungsfall einfallen, bei dem diese Trennung relevant oder geeignet wäre..
    So stelle ich mir das auch vor, eine Gruppe = eine Rolle, das ist verständlicher und einfach umsetzbar ! (für mich als anfänger natürlich)

    Einen Kommentar schreiben:


  • xm22
    antwortet
    Ich halte die Trennung von Gruppen und Rollen für sehr theoretisch und abstrakt. Mir würde jetzt kein Anwendungsfall einfallen, bei dem diese Trennung relevant oder geeignet wäre..

    Das einzige, wo die Trennung relevant wäre, ist der Fall, wenn nach Funktionen und Ressourcen unterschieden werden muss (Bsp. CMS: Schreiben bzw. Seiten). Aber selbst da würde das so idealisiert nicht funktionieren, da eine Gruppe/Rolle bei manchen Seiten schreiben dürfen müsste, bei anderen jedoch nicht.

    Einen Kommentar schreiben:


  • nikosch
    antwortet
    Rollen sind keine Gruppen | Mike Wiesner - IT-Security, Spring, Acegi
    http://adventure-php-framework.org/P...Usermanagement
    http://www.php.de/software-design/56...ollen-etc.html
    http://www.php.de/software-design/50...erwaltung.html
    http://www.php.de/software-design/56...zer-model.html

    Einen Kommentar schreiben:


  • BlackScorp
    antwortet
    also ich habe das so umgesetzt:

    jeder benutzer kriegt rechte in einer tabelle

    users:
    id | username | pw | email
    1 | hanswurst | 123456 | hans@wurst.de

    rechte
    userId | rights
    1 | 0
    1 | 1
    1 | 100

    und dann habe ich zb bei edit.php geprüft ob der benutzer rights 100 hat, wenn nicht dann zeigt das script, dass die seite nicht exestiert. also die funktionen stehen immer bereit, jedoch das aufrufen der seite, welche eine bestimmte funktion aufruft, setzt bestimmte rechte voraus

    Einen Kommentar schreiben:


  • tr0y
    antwortet
    Das war noch die einfache Variante, dein "Wunsch" wär im übrigen:

    PHP-Code:
    Guest Group {

        
    Read Content -> All

        Editors Group 
    {
            
    Add Content -> All
            Edit Content 
    -> All
        
    }


    Einen Kommentar schreiben:


  • 3logy
    antwortet
    Zitat von Destruction Beitrag anzeigen
    btw.: Mit welchem Programm hast du das Diagramm gemacht? MS Visio?
    Ja du könntest zum Beispiel die Berechtigung so machen:

    1: lesen
    2: schreiben / lesen
    ...

    Ich GLAUBE zumindest, dass jeder der schreiben darf auch lesen dürfen sollte oder ?
    Hi Destruction!

    Das diagramm ist von Phypmyadmin Designer!!

    Über die Berechtigung wollte ich so machen :

    im Tabelle Berechtigung :
    Code:
     id | role          | lesen | schreiben | loeschen
     1    Autor            1          1            1
     2    Mitarbeiter      1          1            0
     3    Gast             1          0            0

    Zitat von tr0y
    Rechtesysteme sind Projektgebunden, aber prinzipiell wie da oben
    Dankeschön!!
    Dein beispiel ist bissle kompliziert für mich
    Ich will für mich folgendes haben :
    - Wenn ein Projektteam ein Projekt erzeugt , bekommt er die rechte Autor
    - Die anderen haben also nur das "Gast" rechte

    Einen Kommentar schreiben:


  • tr0y
    antwortet
    Zitat von 3logy Beitrag anzeigen
    Also ich glaube ich drücke mich vielleicht falsch aus!!

    Kann mir jemand helfen (erklären ), wie ich in meiner beispiel(siehe bild) die rechteverwaltung im DB besser umsetzen soll?
    Es gibt zum beispiel rechteverwaltung im CMS oder internetseite mit verschiedene benutzerschichte(Administrator, benutzer usw), kann mir jemand dann erklären wie ich es im bezug meiner beispiel umsetzen kann?

    @tr0y
    mit allem respekt!! ich verstehe gerade nicht warum du sowas geschrieben hast!! eine erklärung über rechteverwaltung wie du es verstehst, hätte gereicht!
    Danke
    PHP-Code:
    Gast {
      
    Read -> Content A

      User Group 
    {
        
    Read -> Content B
      
    }

      
    User Group {
        
    Read -> Content C D E F
      
    }

      
    User Group {
        
    Read -> Content C F
      
    }

      
    User Group {
        
    Read -> Content A B C D E F

         Admin Group 
    {
           
    Edit -> Content A B C
           Set 
    -> RightsUser Group
         
    }

         
    Admin Group {
           
    Edit -> Content D E F
           Set 
    -> RightsUser Group
           Administrate 
    -> Part of Filestructure
         
    }

         
    Superuser Group {
           
    Read -> Statistical Interface
           
    Read -> Logs
           Administrate 
    -> DatabaseFilestructure
           Edit 
    -> Content A B C D E F
           Set 
    -> RightsAdmin GroupUser Group
           Set 
    -> Website-State
         
    }

      }


    Rechtesysteme sind Projektgebunden, aber prinzipiell wie da oben

    Einen Kommentar schreiben:


  • Destruction
    antwortet
    btw.: Mit welchem Programm hast du das Diagramm gemacht? MS Visio?
    Ja du könntest zum Beispiel die Berechtigung so machen:

    1: lesen
    2: schreiben / lesen
    ...

    Ich GLAUBE zumindest, dass jeder der schreiben darf auch lesen dürfen sollte oder ?

    Einen Kommentar schreiben:


  • nikosch
    antwortet
    Das Thema wurde bereits hinreichend behandelt. Bitte benutze die Forensuche und beachte diesen Thread!

    Einen Kommentar schreiben:


  • 3logy
    antwortet
    Also ich glaube ich drücke mich vielleicht falsch aus!!

    Kann mir jemand helfen (erklären ), wie ich in meiner beispiel(siehe bild) die rechteverwaltung im DB besser umsetzen soll?
    Es gibt zum beispiel rechteverwaltung im CMS oder internetseite mit verschiedene benutzerschichte(Administrator, benutzer usw), kann mir jemand dann erklären wie ich es im bezug meiner beispiel umsetzen kann?

    @tr0y
    mit allem respekt!! ich verstehe gerade nicht warum du sowas geschrieben hast!! eine erklärung über rechteverwaltung wie du es verstehst, hätte gereicht!
    Danke

    Einen Kommentar schreiben:


  • tr0y
    antwortet
    Reicht dir Papier + Bleistift nicht ?

    Einen Kommentar schreiben:


  • 3logy
    antwortet
    hi Tr0y!!
    ja danke!
    ich möchte einfach wissen, wie ich am besten einer Datenbank für rechte modellieren kann!! sodass es auch mit PHP einfach nachvollziehbar wird.

    Danke

    Einen Kommentar schreiben:

Lädt...
X