2017-02-14 11 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

だから私は、管理者が簡単に新しいユーザアクセスグループを作成し、コードに触れることなく、既存のものを修正することができるようにアクセス権を変更するチェックボックスを作成します。私がこれを行うと考えることができる唯一の方法は、すべてのコントローラのコードを変更するためのチェックボックスです。誰かがこれを行う方法を提案したり、1つのファイルでユーザーのアクセスを制限する別の方法を提案したりすることができます。

+0

あなたは、[認証]上に読んでください(https://book.cakephp.org/3.0/en/controllers/ components/authentication.html#authorization)。特に、私は[コントローラの承認](https://book.cakephp.org/3.0/en/controllers/components/authentication.html#using-controllerauthorize)を使っています。このようなことを行う[この1つ](https://github.com/dereuromark/cakephp-tinyauth)のようなプラグインもあります。あなたがそれをドロップすることはできないのであれば、少なくともあなた自身のコードでいくつかの作品を一緒にする必要があるかについて、いくつかのアイディアを与えるかもしれません。 –

答えて

0

これを達成する最も良い方法は、ACLプラグインです。

https://github.com/cakephp/acl

これは私がそれを使用する方法である(イタリア語である) 1]

+0

こんにちは、私はACLを設定して、テーブルをリンクしてくれたので、おかげで答えが出ました。コンソールのAROツリーを "bin/cake acl view aro"を使って見ることができますが、あなたの写真に示されています。 –

+0

ルールを編集するためのカスタムコンポーネントを作成し、ビューのルールを確認するヘルパーを作成しました。 Acl \ Controller \ Component \ AclComponentのちょうどintesive使用です –

+0

これを行うためのガイドがあります私はしばらく探していたけどケーキ2のためにいくつかの細かいことができます。 cakephpに新しい。 –

関連する問題