1

我正在尝试在ZF2的示例应用程序中使用 BjyAuthorize,但我在设置它时遇到了一些问题。

我有一个Admin模块,我想授予用户访问它的权限。我也有这个ZfcUser模块,这个模块似乎可以很好地使用这个 acl。

我设置数据库的方式就像他的:

user_role
role_id     default     parent
------------------------------
user        1           admin
admin       2           NULL


user_role_linker
user_id     role_id
-------------------
1           user

我不确定这是否设置正确,我也不确定为什么role_id是 varchar ??!!

无论如何,通过这种设置,ZfcUser 工作得很好。

问题是当我尝试使用不同的模块时,我在其中添加:

array('controller' => 'Admin\Controller\Index', 'roles' => array('guest','user'))

我明白了

403 Forbidden 您无权访问 Admin\Controller\Admin ::indexAction() 。

在自述文件中提到我可以$this->isAllowed($resource[, $privilege])在我的控制器或视图中使用,但该代码是错误的,我不确定什么是$resource$privilege

所以我想我的问题是如何使用这个模块?有人让它工作吗?

4

2 回答 2

0

根据 403 错误文本,您的规则很可能应该更改为

array('controller' => 'Admin\Controller\Admin', 'action' => 'index', 'roles' => array('guest', 'user'))
于 2012-11-12T07:40:19.570 回答
-1

我找到了一个解决方案,可以让我使用 ZfcUser 和 BjyAuthorize,称为ZfcUser-BjyAuthorize-Bridge

还设法使模块与角色一起工作,只是一次又一次地放松 BjyAuthorisation 文档。

我在这里在 github 上建立了一个测试环境,它几乎可以作为所有这些模块的起点。

注意:这个模块将会改变,因为它对我来说更像是一个游乐场

于 2012-10-26T23:13:15.207 回答