【问题标题】:give permissions to all actions of all controllers in all the plugins in a cakephp application with Acl使用 Acl 授予 cakephp 应用程序中所有插件中所有控制器的所有操作的权限
【发布时间】:2023-03-16 00:39:01
【问题描述】:

假设我有一个 cakePHP 应用程序,我想使用 ACL Componentallow 方法为应用程序中所有插件的所有控制器中的所有操作授予权限。我尝试过这样的事情:

$this->Acl->allow(
    array('model'=>'User', 'foreign_key' => $user_id),
    'controllers'
);

类似这样的:

$this->Acl->allow(
    array('model'=>'User', 'foreign_key' => $user_id),
    'controllers/MyPluginName/controllers'
);

但没有任何效果。请帮忙!

注意:插件位于 /app/plugins 目录中

【问题讨论】:

  • 你真的需要acl吗?大多数人会建议你不要使用它,如果你真的不需要的话。使用更简单的方法,特别是如果您需要基于操作的访问(而不是行级别)。

标签: php cakephp cakephp-1.3 acl php-5.3


【解决方案1】:

如果您的控制器操作的权限值为 0,它将起作用。 cakePHP 的权限是自下而上的。即如果动作为 0,但控制器为 1,您仍然可以访问该动作。但如果操作为 -1,控制器为 1,则该操作的权限被明确拒绝。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-10-21
    • 2011-12-14
    • 2020-11-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-29
    相关资源
    最近更新 更多