cakephp acl aros_acos悖论
我试图使用Auth和Acl组件在cakePHP站点中实现一个身份验证/授权组合,但我的实现中出现了一些奇怪的情况。我有正确的acos、aros和aros_acos表,它们似乎在某种程度上起作用 我已将我的行为映射如下: $this->Auth->mapActions(数组('read'=>array('view'),'update'=>array('edit')) 我的acos表如下所示:cakephp acl aros_acos悖论,cakephp,permissions,acl,authentication,Cakephp,Permissions,Acl,Authentication,我试图使用Auth和Acl组件在cakePHP站点中实现一个身份验证/授权组合,但我的实现中出现了一些奇怪的情况。我有正确的acos、aros和aros_acos表,它们似乎在某种程度上起作用 我已将我的行为映射如下: $this->Auth->mapActions(数组('read'=>array('view'),'update'=>array('edit')) 我的acos表如下所示: 场地 1.1页 1.2用户 1.3组 1.4管理 和aros表: 使用者 1.1编辑 1.1
- 场地
- 1.1页
- 1.2用户
- 1.3组
- 1.4管理
- 使用者
- 1.1编辑
- 1.1.1管理员
- 1.1.1.1管理员姓名
- 1.2普通用户
我错过了一些东西,我不知道是什么。我写了这个问题,希望在完成之前,我能自己想出解决方案……但运气不好。我仍然不知道发生了什么,我猜是控制器的问题……你有什么想法吗?思想1->在查看页面的某个地方,你是否有一个到另一个页面的请求操作?它可能来自视图页或视图页上的元素 想法2->构建完整的地图行动。这可能不是一个问题,但最好从这里开始
$this->Auth->mapActions(array(
'read'=>array('index','view','admin_index'),
'create'=>array('add','admin_add'),
'update'=>array('edit','admin_edit'),
'delete'=>array('delete','admin_delete')));
如果需要,不要害怕将代码一直跟踪到Auth组件。只需pr(),直到找到重定向的位置。具体找出导致问题的原因
确保您的会话是正确的,并且在此过程中不会发生更改
思考3->您是否正确地“重建”acl表?这可能是一个数据问题。我建议您使用createAco()、createAro()和$this->Acl->allow()函数来确保数据正确,并且所有键都正确。(检查时不痛)
这是一个你必须一步一步跟踪应用程序的问题。我正在使用当前稳定的CakePHP,没有发现任何问题。谢谢您的回复。最近几天我一直在努力寻找我的问题,但我没有找到它。所以,毕竟,我只是用一条布线线路来修复它。现在我将“/”路由到登录页面。它似乎起作用了。我不知道我的解决方案是否合适,事实上我很确定它不合适,但无论如何,我有一个截止日期,这个解决方案在每个级别都有效(我测试过的)。现在,如果用户试图访问未经授权的crud,那么他将被发送到登录页面,并在该页面上收到$this->Auth->authror通知。无论如何,谢谢你的支持。