【问题标题】:Sitecore 9: Non Admin members are unable to publish items when Publishing.CheckSecurity is set to TrueSitecore 9:当 Publishing.CheckSecurity 设置为 True 时,非管理员成员无法发布项目
【发布时间】:2019-07-21 02:16:09
【问题描述】:

当前场景(Sitecore 9) 用户无法将任何项目发布到任何发布目标,甚至在 Web 数据库上也是如此。当我们在 Sitecore.config 中将 Publishing.CheckSecurity 设置为 true 时,我们会遇到这个问题。

该项目没有工作流,用户拥有该项目的所有(读取、写入、删除、创建)访问权限。

我研究了 Sitecore.Kernel Dll 并发现了不同之处

public bool CanPublish(ID itemId, User user, ref string explanation)
{
Assert.ArgumentNotNull(itemId, “itemId”);
Assert.ArgumentNotNull(user, “user”);
Assert.ArgumentNotNull(explanation, “explanation”);
if (!Settings.Publishing.CheckSecurity)
{
return true;
}
if (!this.CanPublishLanguage(itemId, user, ref explanation))
{
return false;
}
Item sourceItem = this.GetSourceItem(itemId);
if (sourceItem == null)
{
return this.CanPublishDeletion(itemId, user, ref explanation);
}
return this.CanPublishUpdate(sourceItem, user, ref explanation);
}

早期(Sitecore 8.1)“CanPublishLanguage”不存在。我已经提供了语言的所有访问权限,但我的项目在发布时仍然被跳过。该函数返回 false。

如果我将此设置设为 false,那么它工作正常。

如果我错过了更多的配置更改,请提出建议。

【问题讨论】:

    标签: publish roles publishing rights sitecore9


    【解决方案1】:

    此问题存在于 Sitecore 9,并已在 Sitecore 9.0 Update 2 中得到修复。 向 Sitecore 提出了这个问题并得到了解决方案。

    报告的问题看起来像是已在 Sitecore 9.0 Update-2 中修复的问题: https://dev.sitecore.net/Downloads/Sitecore%20Experience%20Platform/90/Sitecore%20Experience%20Platform%2090%20Update2/Release%20Notes

    当 Publishing.CheckSecurity 设置设置为 true 时,非管理员用户即使拥有所有适当的安全权限也无法发布内容项 206940

    要解决此问题,我们建议您将 Sitecore 解决方案升级到 Sitecore XP 9.0 Update 2(修订版 180604)。

    如果不行,可以试试下面的补丁:https://sitecore.box.com/s/swae96e2hhgrbid3keccmvzr4e8kbvr7 要安装补丁,请按照存档内自述文件中的说明进行操作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-10-22
      • 2023-03-25
      • 2019-01-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多