2016-08-01 6 views
1

Ich möchte verschiedene Seiten für Benutzer und Administratoren erstellen. Es scheint, dass:Verschiedene Seiten für Admins und Benutzer [userfrosting 0.3.1]

$app->user->checkAccess('uri_my-whatever-access-rights') 

funktioniert nicht für Administratoren, es validiert immer zu wahren. Ich möchte nicht, dass der Administrator die gleichen Optionen wie ein normaler Benutzer hat.

Dies gilt sowohl für index.php (Slim) als auch für die Twig Templates (Administratoren sehen alle Benutzermenüs, obwohl sie nur für Benutzer gedacht sind).

Fehler? Mache ich etwas falsch?

Dank

+0

Wenn Sie „admin“ sagen, wollen Sie die Root-Benutzer bedeuten, oder haben Sie einen Benutzer bedeuten, dass Sie eine „admin“ Gruppe hinzugefügt haben? – alexw

+0

Ich meinte den "root" -Benutzer. Ich nehme an, dass sich reguläre Administratorkonten wie erwartet verhalten. (Wird überprüft) – amivag

Antwort

1

ich bemerkte das gleiche Verhalten auf meinem Projekt. Der root-Benutzer sieht immer alles, eine mögliche Lösung wäre, die 'user_master_id' einfach auszuschließen, wenn Sie nicht alles als root sehen wollen.

Etwas wie:

if($app->config('user_id_master') == $app->user->id) 

die Arbeit machen sollte.

Bearbeiten: Ich überprüfte die User.checkAccess (..) Methode. Siehe auch die API

Der Benutzer mit der MasterUserId wird alles sehen (bewertet immer wahr) jeder andere Admin sieht nicht die Dinge, die es nicht sehen sollte - wie in den Regeln definiert.

Wenn Sie die Wurzel von einigen Seiten ausschließen möchten/Einträge einfach eine geeignete Routine wie isRoot() zum user Modell anhängen, registrieren es here und Sie können es in Zweig verwenden und auch in den Routing-Routinen.

Grüße

+1

Es ist erwähnenswert, dass der root-Benutzer nicht als tägliches Konto verwendet werden soll. Es soll vielmehr eine Möglichkeit für Entwickler oder den Systemadministrator sein, Code schnell zu diagnostizieren und Fehler zu beheben und auf Steuerungsprobleme zuzugreifen. Der Besitzer einer Website sollte weiterhin über ein eigenes Konto verfügen, das nicht root ist und das für normale Aktivitäten verwendet wird. Also würde ich den Root-Benutzer generell nicht davon abhalten, auf irgendetwas zuzugreifen. – alexw

Verwandte Themen