问题标签 [cakephp-acl]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - CakePHP - 模型上的附加字段以显示角色列表
我需要模型中的一个字段(具体来说,它是一个“用户”模型),它将所有角色(ARO)列为分隔字符串(例如“管理员,官员”)。但是,该字段将是只读字段,可以直接在视图上使用。
这就是我现在拥有的:
role_id 指的是 ARO 角色。我想要一个只读的查看特定字段来包含角色列表。
如何正确执行此操作?
php - CakePHP ACL:如何实现这种情况?
因为我一直在努力寻找一个好的方法来制作这个大约两个星期,所以我认为问问是个好主意。
我有两个User
角色:editor
和admin
。每个editor
人都有一个Region
分配给他的 s 范围,通过$hasAndBelongsToMany
。
在应用程序中,我还有一个模型Event
,每个模型都有一个Region
,通过一个region_id
。我想确保每个人都editor
可以查看、编辑、删除和做其他事情,只有那些Event
在Region
他的任务中。用户admin
当然可以编辑任何东西。
如何在我的 CakePHP 模型和控制器中实现这一点?
cakephp - CakePHP 权限:ACL 是否矫枉过正
我有两个主要的表:
- 书籍(id,作者,isbn,...)
- 用户(ID,用户名,密码,...)
我正在考虑构建一个应用程序,其中 User1 登录并可以:
- 查看所有书籍的列表(例如,只有标题)
- 仅查看他应该有权访问的某些书籍的详细信息(作者、isbn、...)
每个用户都可以访问特定的书籍集。我不需要各种角色。
我已经为上述设置了 MVC 和关系(habtm)。我现在正在考虑开发权限。您认为 CakePHP ACL 解决了这个问题还是有点矫枉过正?
如果它是矫枉过正,是否有另一种组件或更简单的方法来构建所需的功能?
cakephp - ACL cakePHP 错误
我的模型名称是 Admin 而不是用户,我已在 Auth 组件配置中设置它
我不知道错误中的用户不是管理员。
提前致谢。
cakephp-2.0 - ACL 组件模型 CakePHP
我想知道如何为 ACL 指定模型,因为我的模型是 Admin 并且我认为它试图访问用户模型,不知道为什么 =S
AclNode::node() - 找不到由“Array ([Aro0.model] => User [Aro0.foreign_key] => 2)”标识的 Aro 节点
如果有人知道如何解决这个问题,请告诉我。
谢谢
cakephp - 带有 Auth + ACL 的 CakePHP 应用程序和带有 Auth 但没有 ACL 的插件
我有一个带有 Auth 和 ACL 的 CakePHP 应用程序设置。
我还在这个应用程序中制作了一个插件,其中包括一个单独的登录到远离应用程序的网站的另一部分。这使用 Auth 在不同的表上登录,并且不需要 ACL,因为用户将能够访问该站点的这一小部分的所有区域。
我设法使用以下方法将两个身份验证分开:
在插件的 AppController 和
在 App 的 AppController 中
这似乎运作良好,让我可以分别登录网站的两个区域。
接下来,当我尝试在我的插件中添加更多方法时,我收到了错误:
我绝望地尝试运行 AclExtras.AclExtras aco_sync ,但这并不奇怪。
我试图通过添加另一个名为“客户”的组(我正在使用组 ACL)来解决这个问题,然后为我的插件表中创建的所有用户分配客户组 ID。
这停止了错误,接下来我尝试为这些用户的 users/initdb 方法添加一个新行,以便他们只能访问客户控制器。但是,如果他们尝试访问它,他们将被踢出登录页面,就好像他们无权访问此控制器一样。
将方法名称添加到:
有效,但显然不是一个解决方案,尽管它为我指明了与许可相关的方向。
对我来说,理想的解决方案是我可以简单地停止插件从应用程序继承任何 ACL。
cakephp - CakePHP 2.5.2 URL 在身份验证后包含两次应用程序路径
我已经建立了一个简单的网站,并使用此处找到的 ACL 指南添加了身份验证。我想我已经信守承诺了。
我遇到的问题是:
登录后,如果我尝试访问有效的 url,则会再次添加路由文件夹。例如访问:
重定向到
我注意到的事情:
- 只有当用户登录时才会发生这种情况。如果他们没有登录,它会正确重定向到登录页面。
- 只有在作为控制器的页面上才会发生这种情况。如果我输入了错误的页面,它会抛出 Missing Controller 异常。
- 我允许公众访问的任何页面都可以正常工作。只有而且只有那些不公开的。
编辑:
今天早上我安装了一个新版本的 CakePHP 2.5.3。然后我手动复制了所有文件,不包括路由文件。仍然得到同样的错误。
有什么想法可能导致这种情况吗?
编辑: 我在这方面进步了一点。我删除了 ACL 组件并使用了 Auth 组件。
该问题似乎仅在登录用户尝试访问未经授权的 url 时发生。从蛋糕
property
AuthComponent::$unauthorizedRedirect
控制对未授权访问的处理。默认情况下,未经授权的用户被重定向到引用 URL 或 AuthComponent::$loginAction 或“/”。如果设置为 false,则抛出 ForbiddenException 异常而不是重定向。
在我的应用控制器中
这是有效的(因为它根本不重定向)。谁能根据文档解释如何将未经授权的重定向到正确的路线?
编辑 这是我在 App Controller 中的 beforeFilter
编辑用户控制器
php - Cake php 2.x 项目在 ACL 实施后重定向到错误的 url
在我按照本教程完成 ACL 的完整实施后,我的 Cake Php 项目重定向到错误的 URL -> http://book.cakephp.org/2.0/en/tutorials-and-examples/simple-acl-controlled- application/simple-acl-controlled-application.html。
问题 -
正确的重定向-> localhost/appname/
实现 ACL 后重定向 -> localhost/appname/appname/
这是登录后发生的重定向。公共页面(登录)工作正常。
下面是 Appcontroller 代码-
Acos 表截图
Aros 表截图
Aros_Acos 表截图
groups 表
路由.php
当我只使用“Auth”而不是以下内容时,正确的 url 正在打开。
但是,那么 ACL 不起作用。
cakephp - 如何为 habtm 关系工作函数 bindNode()
M 使用 cake 2.6.0 我的模型 user.php 在用户模型中它给出
错误:未定义索引:group_id [APP\Model\User.php]
登录.ctp
我想在 bindNode() 函数中获取 user.group_id,该函数在登录时选择。