在Sitecore中,有什么方法可以创建只能查看和编辑自己创建的项目的角色/用户?如果没有,我如何才能做到这一点?
为了解决这个问题,我在sitecore / events配置下添加了item:created事件。
<event name="item:created" xdt:Transform="Replace" xdt:Locator="Match(name)">
<handler type="Sirano.Dev.ItemEventHandlers.CustomItemEventHandler, Sirano.Dev" method="OnItemCreated" />
</event>
该事件将运行以下代码:
protected void OnItemCreated(object sender, EventArgs args)
{
if (args == null)
{
return;
}
var parameters = Event.ExtractParameters(args);
var item = ((ItemCreatedEventArgs)parameters[0]).Item;
if (item == null)
{
return;
}
var user = Sitecore.Context.User;
var accessRules = item.Security.GetAccessRules();
accessRules.Helper.AddAccessPermission(user,
AccessRight.ItemRead,
PropagationType.Any,
AccessPermission.Allow);
accessRules.Helper.AddAccessPermission(user,
AccessRight.ItemWrite,
PropagationType.Any,
AccessPermission.Allow);
item.Editing.BeginEdit();
item.Security.SetAccessRules(accessRules);
item.Editing.EndEdit();
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句