joomla 3.0 站点组件访问控制

Posted

技术标签:

【中文标题】joomla 3.0 站点组件访问控制【英文标题】:joomla 3.0 site component access control 【发布时间】:2015-05-20 01:47:29 【问题描述】:

Joomla 3 组件安全问题(对不起菜鸟)。我有一个组件,我希望站点和管理部分具有不同的访问设置。 Joomla 示例似乎专注于管理安全,特别是 admin\access.xml。

我可以在组件的“站点”一侧设置组级访问权限吗?如果是这样,如何?

谢谢,这是我找到的最好的文档,但我不认为它解决了我的问题。

https://docs.joomla.org/J3.x:Developing_a_MVC_Component/Adding_ACL#Restricting_access_to_the_component

【问题讨论】:

【参考方案1】:

你有正确的文档,如果它已经在后端正常工作,你也可以在前端使用它。正如教程所述,您必须添加:

// Access check: is this user allowed to access the backend of this component?
if (!JFactory::getUser()->authorise('core.manage', 'com_yourcomponent'))
   //pop the error below:
   return JError::raiseWarning(404, JText::_('JERROR_ALERTNOAUTHOR'));
else
   // [...] Stuff for restricted access here 

代替core.manage,您可以放置​​您需要检查的任何acl 要求。例如core.editcore.managecore.yourown等。这些访问控制条件在admin/access.xml文件中并存,无需为前端创建单独的文件。

【讨论】:

谢谢。我不明白的是我没有设置权限,我们正在设置操作。然后配置组件以将操作分配给组。最后,用户在组中。关键是添加“com_yourcomponent”。再次感谢。

以上是关于joomla 3.0 站点组件访问控制的主要内容,如果未能解决你的问题,请参考以下文章

Joomla 3.0一个具有多个视图的组件

如何将 Joomla 组件调用到模块中?

“找不到'JToolbarHelper类”错误,无法控制joomla

直接访问 Joomla 中的组件

Joomla 2.5 组件控制器加载

MongoDB 3.0+安全权限访问控制