在Umbraco中保存新文档时,在代码中设置基于角色的权限

时间:2015-08-27 22:00:14

标签: umbraco umbraco7

我正在使用Umbraco 7.2.8。当保存特定类型的新文档时,我挂钩到ContentService.Saved事件,我希望能够将公共访问权限设置为仅允许特定成员组访问它。就像我在这里使用Gui一样。

enter image description here

我在这里的文档中看到https://our.umbraco.org/documentation/Reference/Management/Services/ContentService有几种方法,比如

.AssignContentPermission(IContent content,char permission,IEnumerable userIds)

ReplaceContentPermissions(EntityPermissionSet permissionSet)

这两个允许我传入一个userIds用户列表,该用户有权访问但我有兴趣设置有访问权限的成员资格组以及Login Page和Error Page。我怎么能这样做?

1 个答案:

答案 0 :(得分:1)

习惯这样做。我认为它仍然适用:

Access.ProtectPage(false,nodeIdOfPageToProtect,loginPageNodeId,errorPageNodeId);
Access.AddMembershipRoleToDocument(nodeIdOfPageToProtect,"roleName");

方法位于umbraco.cms.businesslogic.web,因此请务必为页面设置此

using umbraco.cms.businesslogic.web; 

这有帮助吗?