Php 如何在Zend Framework 2中设置BjyAuthorize?
我试图在ZF2中的一个示例应用程序中使用它,但在设置它时遇到了一些问题 我有一个Php 如何在Zend Framework 2中设置BjyAuthorize?,php,acl,zend-framework2,Php,Acl,Zend Framework2,我试图在ZF2中的一个示例应用程序中使用它,但在设置它时遇到了一些问题 我有一个Admin模块,我想授予用户访问该模块的权限。 我还有ZfcUser模块,该模块似乎与此acl配合得很好 我设置db的方式与他的类似: user_role role_id default parent ------------------------------ user 1 admin admin 2 NULL user_role
Admin
模块,我想授予用户访问该模块的权限。
我还有ZfcUser
模块,该模块似乎与此acl配合得很好
我设置db的方式与他的类似:
user_role
role_id default parent
------------------------------
user 1 admin
admin 2 NULL
user_role_linker
user_id role_id
-------------------
1 user
我不确定这是否正确设置,也不确定为什么role\u id
是varchar
在任何情况下,使用此设置,ZfcUser都可以正常工作
问题是当我尝试使用不同的模块时,我添加了:
array('controller' => 'Admin\Controller\Index', 'roles' => array('guest','user'))
我明白了
403禁止
您无权访问Admin\Controller\Admin::indexAction()
在自述文件中提到,我可以在控制器或视图中使用$this->isAllowed($resource[,$privilege])
,但该代码是错误的,我不确定$resource
或$privilege
所以我想我的问题是如何使用这个模块?有人让它工作了吗?我找到了一个解决方案,可以让我与ZfcUser和BjyAuthorize一起工作 还通过一次又一次地搁置BJYAuthoritation文档,使模块与角色一起工作 我在github上设置了一个测试环境,它可以作为所有这些模块的起点
注意:此模块将更改,因为它更像是我的游乐场根据403错误文本,您的规则很可能应更改为
array('controller' => 'Admin\Controller\Admin', 'action' => 'index', 'roles' => array('guest', 'user'))