Текущий сценарий (Sitecore 9) Пользователь не может публиковать какие-либо элементы в любой цели публикации, даже в веб-базе данных.Мы сталкиваемся с этой проблемой, когда устанавливаем для Publishing.CheckSecurity значение true в Sitecore.config.
Нет рабочего процесса для элемента, у пользователя есть все права (чтение, запись, удаление, создание) для элемента.
Я копался в 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» там не было.Я предоставил полный доступ к языку, но все же мои материалы пропускаются при публикации.Функция возвращает ложь.
Если я установлю этот параметр как ложный, то он будет работать нормально.
Пожалуйста, предложите, если я пропустил еще какое-то изменение конфигурации для этого.