ACL – práva na úrovni uživatele (ne na úrovni role)

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Dalibor
Člen | 26
+
0
-

Ahoj,

jak byste řešili situaci kdy je třeba definovat práva Zdroj X Uživatel a ne Zdroj X Role?

Například budu mít několik administrátorů a každý z nich bude mít jiná práva, přístup k jiným částem webu apod. Musel bych si pro každého administrátora vytvořit samostatnou roli, což je zbytečné..

Něco takového:

Petr = překlady + moderování příspěvků
Pavel = schvalování objednávek
Katka = export faktur

Při využití Nette ACL by to vedlo k vytvoření rolí Petr, Pavel a Katka, a ptal bych se potom if ($user->isInRole(‚katka‘)) …

také bych se chtěl vyhnout dynamickému přidávání rolí..

Díky za nápady, Dalibor

Aurielle
Člen | 1281
+
0
-

IPermissionAssertion, resp. callback rozhodující o právu ano/ne. Předává se jako čtvrtý parametr metody allow/deny.

Dalibor
Člen | 26
+
0
-

Díky, mrknu se na to.