2017-02-14 49 views
0

我有多個用戶訪問組,我目前使用此代碼來限制某些頁面的用戶訪問組。CakePHP頁面限制接口

public function add() 
    { 
     if($this->request->session()->read('Auth.User.access_id') != '1 ') 
      { 
       //$this->request->session()->setFlash('You are not authorized to visit this page','flash',array('alert'=>'info')); 
       $this->redirect('/dashboard'); 
      } 

我希望能夠創建一個Opencart的接口類型爲允許每個用戶訪問組不同頁面的訪問。

Opencart Image Example

所以我想創建複選框以修改權限,使管理員可以輕鬆地創建新的用戶訪問組和修改現有的不碰代碼。我能想到的唯一方法是使用複選框修改每個控制器的代碼。有人可以幫助建議一種方法來做到這一點,或建議另一種方式來限制用戶在一個文件中的訪問感謝。

+0

你應該在[授權](https://book.cakephp.org/3.0/en/controllers/讀了組件/ authentication.html#授權)。特別是,我已經使用[控制器授權](https://book.cakephp.org/3.0/en/controllers/components/authentication.html#using-controllerauthorize)來處理這類事情。還有像[this one]這樣的插件(https://github.com/dereuromark/cakephp-tinyauth)可以做這種事情;如果你不能把它放進去,它至少可以給你一些關於如何在你自己的代碼中把某些片段組合在一起的想法。 –

回答

0

實現該功能的最佳方法是ACL插件。

https://github.com/cakephp/acl

這是我如何使用它(在意大利語) 1]

+0

嘿謝謝你的答案我已經建立了ACL並且鏈接了表格,所以它們都可以工作我可以通過使用「bin/cake acl view aro」來查看控制檯中的ARO樹,但是我不確定如何獲得像用戶界面一樣的顯示在你的照片中。 –

+0

我已經構建了一個自定義組件來編輯規則和幫助程序來檢查視圖上的規則。是隻是和敏感使用Acl \ Controller \ Component \ AclComponent –

+0

有沒有任何指導做這個我一直在尋找一段時間,但只能罰款一些蛋糕2.我只是不知道從哪裏開始,因爲我'米新cakephp。 –