Ваши "простые" параметры безопасности - это либо защитить сам элемент Home от редактирования, либо ограничить доступ к параметрам публикации. Используя стандартную защиту Sitecore, отключите доступ на запись в Home для определенной роли пользователя или отключите доступ на чтение в блоке или кнопке «Ограничения публикации» в ядре (/ sitecore / content / Applications / Content Editor / Ribbons / Chunks / Publish Restrictions / Change).
Если вам действительно не нужен кто-либо, кроме администраторов, редактирующих элемент «Домой», вы также можете защитить элемент от ленты «Настройка».
Если вы хотите просто отключить ограничения на публикацию в Home, это может быть сложнее. Ваш лучший подход, вероятно, будет расширять команду SetPublishing. Не проверено следующее:
- Продлить
Sitecore.Shell.Framework.Commands.SetPublishing
- Переопределить
Execute(CommandContext)
- Проверьте
context.Items[0]
, чтобы увидеть, является ли это вашей домашней страницей (GUID или Template ID, если мульти-сайт проверяется). Если это так, отменить. Если нет, позвоните base.Execute(context)
. (Вы также можете добавить чек для Sitecore.Context.User.IsAdministrator
, если хотите.)
- Заменить команду
item:setpublishing
в Commands.config.
Ссылка Sitecore.Shell.Framework.Commands.SetPublishing
в вашем любимом декомпиляторе по мере необходимости.