【问题标题】:Adding new permission to control panel configlet in Plone在 Plone 中向控制面板 configlet 添加新权限
【发布时间】:2015-09-23 18:52:39
【问题描述】:

我正在向插件添加新权限,以允许具有站点管理员角色的用户能够访问其控制面板配置。

我关注了Plone's documentation on creating custom permissions,但我不明白rolemap.xml 文件的必要性,因为没有它我的权限已启动并运行:

<configure xmlns="http://namespaces.zope.org/zope"
    xmlns:browser="http://namespaces.zope.org/browser">

  ...

  <permission
      id="collective.upload.Setup"
      title="collective.upload: Setup">
    <role name="Manager"/>
    <role name="Site Administrator"/>
  </permission>

  <browser:page
      name="upload-settings"
      for="Products.CMFPlone.interfaces.IPloneSiteRoot"
      class="collective.upload.controlpanel.UploadSettingsControlPanel"
      permission="collective.upload.Setup"
      />

</configure>

我是否需要在这里使用rolemap.xml

【问题讨论】:

    标签: security permissions plone zope genericsetup


    【解决方案1】:

    创建一个你不需要任何rolemap.xml 的新权限:权限将使用默认设置创建,你可以在 Zope 应用程序的根目录中看到,但你的角色很少可见。

    rolemap.xml 用于在安装插件的 Plone 站点的上下文中为角色分配权限。

    我担心你的配置会产生副作用:

    • 您将权限分配给 ZMI 根目录中的“站点管理员”角色(该角色未定义)
    • 您只会在 Plone 站点根“安全”选项卡中看到为权限选择的“获取”检查

    这里的事情仍然有效,但您没有从 ZMI 获得任何关于站点管理员如何/在何处获得此权限的明确视图。

    我发现使用rolemap.xml 是一种更简洁的解决方案(通常我还将“获取权限设置”设置为 False)。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-10-29
    • 2011-10-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-25
    • 1970-01-01
    相关资源
    最近更新 更多