繁体   English   中英

获取Sitecore角色的访问规则

[英]Get access rules of a Sitecore role

是否可以查看Sitecore中特定角色具有的访问规则列表? 也就是说,是否有一种方法可以以编程方式扮演角色并查看其有权创建/删除/访问的项目?

我的解决方法是将用户从组中拉出并查看其访问权限...但是我希望可以有一种更干净的方法来对组本身进行访问。

是否可以查看Sitecore中特定角色具有的访问规则列表?

访问权限存储在项目中,因此为了获得所有角色访问规则,您必须扫描数据库中的所有项目(就像Access Viewer一样)。

对于每个项目,您可以检查是否为特定帐户 (用户或角色)配置了任何访问权限以及访问权限

AccessRuleCollection accessRules = item.Security.GetAccessRules();
AccessRightCollection accessRights = AccessRightManager.GetAccessRights();
foreach (AccessRight accessRight in accessRights)
{
    AccessPermission accessPermission =
        accessRules.Helper.GetAccessPermission(account, accessRight, PropagationType.Entity);

    if (accessPermission != AccessPermission.NotSet)
    {
        // do smth here
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM