I am trying to remove a specific role from an element. Now I have 3 roles assigned. Everything, sitecore \ author, sitecore \ developer. How to remove "Everyone" and "sitecore \ author". So far I have tried this, but it does not work.
public static void ClearSecurityRoles(this Item item) { var accessrules = item.Security.GetAccessRules(); var role = Sitecore.Security.Accounts.Role.FromName("Everyone"); accessrules.Helper.RemoveExactMatches(role,AccessRight.Any,PropagationType.Any); item.SaveSecurityAccessRules(accessrules); } public static void SaveSecurityAccessRules(this Item item, AccessRuleCollection accessRules) { item.Editing.BeginEdit(); item.Security.SetAccessRules(accessRules); item.Editing.EndEdit(); }
When I use accessrules.clear() , it removes all roles, but I want to remove only two. How to do it?
source share