0
我正在使用cakephp 2.3.0並使用ACL。我給權限的組,如下所示:如何給節點參考檢查cakephp 2.3 ACL權限
$group->id = 2;
$this->Acl->deny($group, 'controllers');
$this->Acl->allow($group, 'controllers/Posts');
現在,我怎麼能檢查「控制器/帖子」允許來自同一個控制器$組 - > ID = 2?
我想
$this->Acl->check('controllers/Posts', '2');
,但它始終返回false併產生報警:
Failed ARO/ACO node lookup in permissions check. Node references:
Aro: controllers/Pages
Aco: Data entry operator
請幫助我。謝謝。
謝謝,現在它正在工作。 –
還有一個問題,$ this-> Acl-> check()非常慢。花費太長時間來檢查所有資源。有沒有更快的方法? –
您可以將Session中的每個唯一條目緩存在數組中。這樣你不必多次檢查。只需擴展AuthComponent並添加一個嘗試首先檢查會話數據的新方法。 *注意:當您更新ACL表並且用戶沒有銷燬它的會話時,我將不會被會話知道,只要記住這一點; - )*但是,不,除了以外沒有任何更快的方式緩存。很傷心。但通常ACL表不會經常發生變化。 – Jelmer