站长百科 | 数字化技能提升教程 数字化时代生存宝典
首页
数字化百科
电子书
建站程序
开发
服务器
办公软件
开发教程
服务器教程
软件使用教程
运营教程
热门电子书
WordPress教程
宝塔面板教程
CSS教程
Shopify教程
导航
程序频道
推广频道
网赚频道
人物频道
网站程序
网页制作
云计算
服务器
CMS
论坛
网店
虚拟主机
cPanel
网址导航
WIKI使用导航
WIKI首页
最新资讯
网站程序
站长人物
页面分类
使用帮助
编辑测试
创建条目
网站地图
站长百科导航
站长百科
主机侦探
IDCtalk云说
跨境电商导航
WordPress啦
站长专题
网站推广
网站程序
网站赚钱
虚拟主机
cPanel
网址导航专题
云计算
微博营销
虚拟主机管理系统
开放平台
WIKI程序与应用
美国十大主机
编辑“
EZ Publish/EZ Publish 策略功能
”
人物百科
|
营销百科
|
网赚百科
|
站长工具
|
网站程序
|
域名主机
|
互联网公司
|
分类索引
跳转至:
导航
、
搜索
警告:
您没有登录。如果您做出任意编辑,您的IP地址将会公开可见。如果您
登录
或
创建
一个账户,您的编辑将归属于您的用户名,且将享受其他好处。
反垃圾检查。
不要
加入这个!
{{EZ Publish top}} == 策略功能简述 == [[eZ Publish]] 内建的访问控制机制基于角色和策略。策略是一组授权访问模块的特定或全部函数的规则。 函数被指派到模块的视图,因而对视图的访问是由指派给它的函数控制的。 以下代码演示了在"kernel/notification/module.php"中如何指派"notification"模块的函数-视图。 <pre> <?php $Module = array( "name" => "eZNotification", "variable_params" => true ); $ViewList = array(); $ViewList["settings"] = array( "functions" => array( 'use' ), "script" => "settings.php", 'ui_context' => 'administration', "default_navigation_part" => 'ezmynavigationpart', "params" => array( ), 'unordered_params' => array( 'offset' => 'Offset' ) ); $ViewList["runfilter"] = array( "functions" => array( 'administrate' ), "script" => "runfilter.php", 'ui_context' => 'administration', "default_navigation_part" => 'ezsetupnavigationpart', "params" => array( ) ); $ViewList["addtonotification"] = array( "functions" => array( 'use' ), "script" => "addtonotification.php", 'ui_context' => 'administration', "default_navigation_part" => 'ezcontentnavigationpart', "params" => array( 'ContentNodeID' ) ); $FunctionList['use'] = array( ); $FunctionList['administrate'] = array( ); ?> </pre> 如上面代码所示,有两个函数被指派给三个函数。"administrate"函数被指派给"runfilter"视图,"use"函数被指派给"addtonotification"和"settings"视图。 == 多函数指派 == 一个视图可以有多个函数指派。从3.9.3 版本开始,系统在函数-视图指派中使用逻辑操作符("and","or")。下例演示了这个特性如何工作。 例1 "content"模块的"tipafriend"视图有两个函数指派。以下代码摘自"kernel/content/module.php"。 <pre> $ViewList['tipafriend'] = array( 'functions' => array( 'tipafriend', 'read' ), 'default_navigation_part' => 'ezcontentnavigationpart', 'script' => 'tipafriend.php', 'params' => array( 'NodeID' ) ); </pre> 本例中的代码限定用户必须被同时授权访问"tipafriend"和"read"函数才能使用"tipafriend"视图("content"模块的一部分)。注意,有如下一种方法来指派同样的函数。 <pre> ... 'functions' => array( 'tipafriend and read' ), ... </pre> 注意,"and"操作符也可以用"&&"代替。 例2 "section"模块的"list"视图有三个函数指派。下面的代码摘自"kernel/section/module.php"。 <pre> $ViewList['list'] = array( 'functions' => array( 'view or edit or assign' ), 'script' => 'list.php', 'default_navigation_part' => 'ezsetupnavigationpart', "unordered_params" => array( "offset" => "Offset" ), 'params' => array( ) ); </pre> 上例的代码限定用户只要被授权访问"view","edit"或"assign"函数中的一个就可以使用"list"视图("section"模块的一部分)。注意,"or"操作符也可以用"||"来代替。 == 缺失函数 == 某些模块没有函数(如,"search"和"collaboration"模块)。这种情况下,授权访问这个模块意味着用户被授权访问这个模块的所有视图。 如果一个模块既有有函数指派的视图也有没有函数指派的视图,只有当用户被授权访问整个模块才可以访问那些没有函数指派的视图。 == 对早期版本的补充说明 == 在3.9.3 版本(除3.8.9 及以后的3.8.x 版本)以前版本中,授权用户访问模块的函数将会授权用户访问: • 被指派该函数的视图 • 没有函数指派的视图 例如,在eZ Publish 3.9.2,"shop"模块的"discountgroupview"视图没有函数指派。可以访问"shop"模块的"buy"函数的匿名用户也可以访问"discountgroupview"视图(以及其它没有函数指派的视图)。基于安全考虑,这一特性在"3.10.0 beta1“,"3.9.3"和"3.8.9"版本中被修改。自定义的模块如果有函数不应该包含没有函数指派的视图。 == 函数限制 == 策略(授权访问模块的函数)可以通过函数限制被进一步限定。如果函数支持限定条件就可以做这种限定。函数可以支持0,1 或多个限定条件。下面的代码演示了如何 在"kernel/content/module.php"对"diff","hide"和"tipafriend"函数指定限定条件。 <pre> ... $FunctionList['diff'] = array( 'Class' => $ClassID, 'Section' => $SectionID, 'Owner' => $Assigned, 'Node' => $Node, 'Subtree' => $Subtree); ... $FunctionList['hide'] = array( 'Subtree' => $Subtree ); ... $FunctionList['tipafriend'] = array(); ... </pre> 如上面的代码所示,"diff"函数支持五个限定条件,"hide"函数支持一个,"tipafriend"函数不支持限定条件。参考“[[EZ Publish/EZ Publish访问控制|EZ Publish访问控制]]”了解更多。 ==参考来源== *http://wenku.baidu.com/view/8cf795b665ce05087632138a.html *http://ez.no/eZPublish/New-Release [[category:EZ Publish|E]] {{EZ Publish}}
摘要:
请注意,您对站长百科的所有贡献都可能被其他贡献者编辑,修改或删除。如果您不希望您的文字被任意修改和再散布,请不要提交。
您同时也要向我们保证您所提交的内容是您自己所作,或得自一个不受版权保护或相似自由的来源(参阅
Wordpress-mediawiki:版权
的细节)。
未经许可,请勿提交受版权保护的作品!
取消
编辑帮助
(在新窗口中打开)
本页使用的模板:
模板:EZ Publish
(
编辑
)
模板:EZ Publish top
(
编辑
)