2017-03-01 13 views
1

私はCakePHPに次のプラグイン(https://github.com/CakeDC/users)を使用していますが、アクセス許可の取得方法を理解できません。私はすべての指示に従っていますが、authorizeはまったく使用されていないようです。誰かがそれを動作させる方法に関するヒントを持っているかどうか分かります。ここに私の設定です:CakePHP - CakeDCプラグインのアクセス許可が無効です

Configure::write('Users.config', ['users']); 
Plugin::load('CakeDC/Users', ['routes' => true, 'bootstrap' => true]); 

AppController.phpinitialize機能

bootstrap.phpの

$this->loadComponent('CakeDC/Users.UsersAuth'); 

のconfig/users.php

$config = [ 
    'Auth' => [ 
     'authError' => 'Did you really think you are allowed to see that?' 
    ] 
]; 

return $config; 

のconfig/permissions.php

return [ 
    'Users.SimpleRbac.permissions' => [ 
     [ 
      'role' => '*', 
      'controller' => 'Pages', 
      'action' => ['display'], 
      'allowed' => true 
     ], [ 
      'role' => '*', 
      'controller' => 'Taxes', 
      'action' => ['*'], 
      'allowed' => true 
     ], [ 
      'role' => '*', 
      'prefix' => 'v1', 
      'controller' => '*', 
      'action' => '*', 
      'allowed' => true 
     ] 
    ] 
]; 

return $config; 

率直に言って、それは、CakePHPの設定の問題と思われるが、私はその問題がどこから来ている見つけることができないのです。デバッグでは正しいファイルがauthorizeにロードされていると表示されても、呼び出されないからです。

答えて

1

あなたはusers.phpファイルに$config変数を戻ってきているとhttps://github.com/CakeDC/users/blob/master/Docs/Documentation/Configuration.md

Configure::write('Users.config', ['users']); 
Plugin::load('CakeDC/Users', ['routes' => true, 'bootstrap' => true]); 

ここに示されるように、あなたは私があなたの提供認証の設定とここにテスト環境を作成しましたし、それが動作正しくプラグインを初期化していることを確認してください正しくhttps://ide.c9.io/steinkel/users-so-42523209

https://nimbus.everhelper.me/client/notes/share/790695/girguwv9x7rttdvu5c4x

おかげで、

+0

誠実な答えをありがとう。私はあなたがここで何をしたのかを見直します。私は私の質問にすべてのコードを追加することに失敗し、私はそれが私のものを反映するように更新しました。 –

+0

私はあなたのC9セットアップを見直しました。それは私のものと似ています。あなたの 'permissions.php'ファイルで、' 'role' => 'user'、 'がホームページにアクセスすることを許可しています。あなたのスクリーンショットに基づいて、認証されていないユーザーへのアクセスを妨げています。私は '' role '=>' * '、 ''を持っていても私のアプリで同じ結果を見ます。あなたのアプリケーションの権限を ''role' => '*' 'に変更して、あなたがホームページを見ることができるかどうか、あるいはあなたが' 'ログイン'ページにあなたを送り続けるかどうかを教えてください。ありがとうございました! –

+0

私は間違いなくSimpleRbacAuthorize.phpが、ユーザーがログインしていなければ、$ this-> Auth-> allow(['action'])を使わないようにすると考えていました。そうではありません。再度、感謝します! –

関連する問題