Zjemnění autorizace na více než resource a privilege

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

Ahoj,

potřeboval bych práva uživatelů rozlišit na trochu více než resources a privileges. Například, mám-li resource:

jablka,
hrušky,
pomeranče,
citrony

a privileges:

sklidit,
prodat,
vyhodit

tak je vše v pořádku. Ale pokud bych chtěl začít odlišovat, jednotlivá jablka (jakože třeba přes ID), tak si moc nevím rady.

Chtěl bych mít uživatele, kteří třeba mají právo sklízet všechna jablka a pak uživatele, kteří mohou sklízet jen jablka s ID 25.

Jak na to? Něco jako

$user->isAllowed( ‚jablka‘, ‚sklízet‘, 25 ); ?

Díky moc.

srigi
Nette Blogger | 558
+
0
-

Pamatam si na toto vlakno.

knyttl
Člen | 196
+
0
-

Supr, díky. Jen mi přijde trochu komplikované dělat kvuli testu na ID úplně novou třídu. Nejde to trochu jednodušeji?

Přesně jako:

<?php
$acl->allow( 'editor', 'jablka', 'sklizet', permisssion:all );
$acl->allow( 'user', 'jablka', 'sklizet', 25 );

$user->isAllowed( ‚jablka‘, ‚sklízet‘, 25 );
?>

I tak díky, aspoň vím, kudy jít.

Editoval knyttr (11. 8. 2010 23:49)

Patrik Votoček
Člen | 2221
+
0
-

Srigi jj to já taky ale pokud vím tak IPermissionAssertion bylo zrušeno a místo toho je normální callback