2017-02-08 4 views
0

Ich habe derzeit ROLE_ADMIN: ROLE_USER und ROLE_SUPER_ADMIN: [ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH] und ich wollte eine neue Rolle mit Berechtigungen zwischen normalen Benutzer und Admin hinzufügen. Ich bin völlig neu in Symfony im Allgemeinen und ich lese einige Dokumentation darüber, aber ich kann einfach nicht den Prozess der Erstellung einer neuen Rolle verstehen. Das Wichtigste zuerst: soll ich tunErstellen von Rollen in fosUserBundle

ROLE_ADMIN: ROLE_USER 
ROLE_SUPER_ADMIN: [ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH, ROLE_NEW_ROLE] 

oder

ROLE_ADMIN: ROLE_USER 
ROLE_NEW_ROLE: ROLE_USER 
ROLE_SUPER_ADMIN: [ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH] 

Und zweitens: Neben dieser Änderung in security.yml, in welche Dateien brauche ich etwas zu ändern, um die Schaffung eines nur zu vervollständigen Rolle (nicht darüber reden, dieser Rolle noch spezifische Berechtigungen zu geben).

Ich weiß nicht, ob das eine dumme Frage ist, aber ich bin ziemlich verloren.

Antwort

2

Willkommen in der Symfony Community!

Um es einfach auszudrücken, die Definition von Rollen und die Hierarchie sind völlig verschieden.

Sie können für Ihre Benutzer unterschiedliche Rollen definieren, ohne sie in Ihrem Projekt anzugeben. Mit der Förderung/degradieren Befehl, zum Beispiel:

php app/console fos:user:promote 
php app/console fos:user:demote 

Auf der anderen Seite, wenn Sie eine Hierarchie zwischen Benutzer zu erstellen möchten und Admin, können Sie die Benutzermitgliedsrechte zuweisen:

role_hierarchy: 
    ROLE_NEW_ROLE: ROLE_USER 
    ROLE_ADMIN: ROLE_NEW_ROLE 

Das ist alles!

Verwandte Themen