问题标签 [zend-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 - 引导 Zend 布局并包含导航资源
使用以下引导程序时,我在渲染导航菜单时遇到问题:
在我的layout.phtml
我有:
在我的application.ini
我有:
在我的导航菜单中发出$view = $layout->getView();
未呈现的结果。如果我将那部分注释掉,它会很好。
如何在引导程序中设置标题和 acl 角色,并且仍然正确呈现我的菜单?
performance - 模型中的 Zend ACL 与 Zend Navigation
我喜欢将 ACL 绑定到此处描述的模型的想法:
但是我怎样才能将它与 Zend Navigation 结合起来呢?渲染站点地图时,我必须实例化所有模型。
是否有人在至少中等规模的站点上实际使用过这种方法,并且可以分享他在解决性能问题方面的经验?
php - Zend_Auth、Zend_Acl 和 Cron 作业/计划任务
我已经将 Zend_Auth 和 Zend_Acl 实现到一个正在工作的项目中,并且它工作得很好。但是,以前我安排了在一天中的不同时间运行的任务,现在由于登录过程而不再正常工作。这些是通过 cygwin wget 调用到 URL 的。我想知道是否有办法为我的一个控制器禁用 Auth/Acl 来完成所有 CRON 的工作?
php - Zend_Acl 开启时如何处理异常?它给出了资源'default::error::error' not found'
我已经实现了 Zend_Acl,它似乎正在工作。我的资源是链接:
模块名称。“::”。控制器名称。“::”。动作名称;
我在我的代码中添加了一些破坏性的东西,似乎我被重定向到通常的错误页面,但是 Acl 进来说
致命错误:在第 365 行的 F:\work\php\zendworkspace\myproject\library\Zend\Acl.php 中未捕获的异常 'Zend_Acl_Exception' 和消息 'Resource 'default::error::error' not found'
我已添加default::error::error
到资源中,但错误仍然相同。当我删除破坏整个事情的代码时,它再次起作用。所以当我的代码出现问题时,我肯定会遇到同样的错误。
我想知道如何解决这个问题。感谢您阅读和分享您的经验。
编辑:
实现它的代码有点长。这是一个带有原则的数据库驱动 ACL。我已经修改了这个教程来实现我的。我已经删除了 myACL 类,看起来和教程中的一样,ACL 插件也是一样的。我已经在 application.ini 中注册了它。
如您所见,我已将默认情况下的所有链接授予角色guest
含义guest
,可以default::error::error page
在出现问题时看到。
我还可以向您保证,当我的代码没有任何问题时,我可以使用publisher
凭据登录并在我尝试进入管理面板的任何时候被退回。
zend-framework - 无法基于 Zend_Acl 创建导航
我正在尝试学习使用 Zend_Acl 创建导航。但是导航只显示给管理员,没有其他人。
我已经阅读了我的代码,并尝试跟踪 ZendFramework 附带的代码。但是我被卡住了,我无法弄清楚我做错了什么。
这是我的acl类:
这是定义导航的 xml 文件:
这是设置导航的引导文件中的代码:
$this->acl 保存 acl 对象,而 zend 注册表保存登录用户的角色。
请提出您可能有的任何问题。我已经完全被卡住了超过3天。
php - ZF Zend 表单验证器检查是否允许用户更改字段?
是否可以为 zend 表单编写验证器,用于检查用户是否有权更改表单字段?意味着用户看到了该字段,但如果即使在没有许可的情况下尝试(没有 acl 权限),他会收到错误消息?随后,这意味着如果不允许用户更改字段,则禁用该字段。
zend-framework - 是否可以将 zend acl 中的权限设置为控制器级别的操作级别
我正在使用 zend 框架,在我的站点中,我有两种类型的用户,访客和登录用户,我有一个名为的控制器。书,里面有 3 个动作。添加、编辑和删除,
在我的zend acl中,我只将图书控制器的权限授予登录用户,在我的导航中,图书链接不显示给访客,而不是我想向登录用户显示所有3个子链接,并且只向访客添加子链接
像这样
登录用户
图书
添加
编辑
删除
和客人
图书
- 添加
问题是当我在 acl 中设置权限时,书籍链接完全没有向客人显示,
我的acl的这一部分
有什么方法可以设置操作级别的权限,或者我需要一个插件。我花了几个小时努力寻找解决方案,但找不到。请帮助......谢谢:(
更新 。
不要被名字迷惑,这不是默认的zend Acl.php。这是一个自定义的留在我的模型文件夹中
我的navigation.xml 的一部分
php - Zend Navigation & 递归 Zend Acl
我想使用基于 Zend_Acl 的 Zend_Navigation 进行导航,下面是我位于 /application/configs 目录中的一部分 navigation.xml 文件
我不想在 ACL 中显示所有页面都被拒绝的部分。
例如,如果有用户在 ACL 中对所有页面资源和权限都有 TYPE_DENY<menu1>
我不想创建和显示标签“solidData”
主要问题是我的菜单结构,因为如您所见,我在一个菜单部分中有各种资源。
我已经尝试使用我自己的 Navigation 类扩展 Zend_Navigation 并使用函数isVisible()和“ isActive() ”,但我找不到解决方案。
我会很感激任何帮助
[编辑] 看看我的菜单的这个片段结构:
我不能<resource>
因为<menu2>
包含<menu2>
具有不同资源 fe 'users' 和 'profile' 的页面。也许有可能将许多资源添加到一个菜单中。我尝试这样的事情:
但我明白了
编辑
好的,但是如果我更改菜单结构,我还必须更改 ACL。在我的 ACL 资源是控制器中,权限是控制器中的操作。
zend-auth - Zend_Auth 登录时创建的重复数据库会话
我一定做错了什么。我似乎无法在网络上的任何地方找到我的问题的答案,这通常意味着解决方案非常简单,没有人需要答案。
我正在使用数据库来存储我的会话。我在我的引导程序中设置它是这样的:
我的引导程序中的下一个是我的插件设置
我的 Acl_Acl 看起来像这样:
我的身份验证控制器具有以下操作:
我的数据库结构:id:int 修改:int 生命周期:int 数据:文本
一切都很好,对吧?嗯,不...
首先,每次未登录的人刷新或导航到页面时,都会创建一个会话。这是可以接受的,我猜...
我遇到的问题是,当我最终登录时,我可以看到数据库正在完美地存储 Zend_Auth 身份和 Flashmessenger,但是......
...它还在数据库中创建了一个幻影行,就好像一个未登录的用户正在浏览该网站......
这使得身份验证变得不可能,因为当用户被重定向到“配置文件”页面时,例如,Zend 正在查看完全不包含任何数据的虚拟会话数据!
下面是存储在 Zend_Session 数据库表中的信息,作为存储内容的证据:
Zend_Auth|a:1:{s:7:"storage";O:8:"stdClass":7:{s:2:"id";s:1:"2";s:5:"email"; s:17:"wes@ * *** .com";s:10:"first_name";s:6:"Wesley";s:9:"last_name";s:7:" * ";s:5 :"level";s:5:"basic";s:8:"昵称";s:3:"Wes";s:9:"lastlogin";s:19:"2011-07-14 19:30 :36";}}__ZF|a:1:{s:14:"FlashMessenger";a:1:{s:4:"ENNH";i:1;}}FlashMessenger|a:1:{s:7 :"default";a:1:{i:0;s:16:"Wes come back";}}
这已经让我发疯了 2 天了。我的印象是 Zend_Session 自动只使用 1 个会话来存储数据,但是这些多个条目让我发疯!
我希望我已经给了某人足够的信息来工作。
zend-framework - 使用 isAllowed 后显示错误消息
例如,我在派生自 Zend_Acl_Assert_Interface 的类中实现了 assert 方法。
它检查两个条件:用户有足够的钱和用户有足够的评级。当 isAllowed 方法仅返回 bool 时,如何显示错误消息以使用户知道哪个条件失败?