Cor*_*ett 4 asp.net-membership sitecore role-based sitecore6
我有一个使用AD模块连接到Active Directory的Sitecore站点.假设我们在Sitecore中定义了一个名为"内容作者"的角色.内容作者可能包含单个用户帐户 - "jsmith" - 或者它可能包含整个AD组 - "Northeast Managers".我需要直接或间接(通过AD组)获取"内容作者"角色中所有用户的列表.现在我的代码似乎只返回直接成为"内容作者"角色成员的用户.这是我的代码:
string[] _roleUserNames = System.Web.Security.Roles.GetUsersInRole("Content Authors");
Run Code Online (Sandbox Code Playgroud)
我假设这段代码会返回该角色中每个人的"有效"列表.它似乎只会让那些直接担任这个角色的人回归.有谁知道是否有其他方式让每个人都参与其中?
我发现这是Sitecore的一个特定问题,因为Sitecore允许Roles in Roles,并且该功能是建立在MS ASP.NET Membership之上的.要让包含"间接"用户的角色中的所有用户,您应该使用以下代码:
IEnumerable<User> _roleUsers = Sitecore.Security.Accounts.RolesInRolesManager.GetUsersInRole(Role.FromName("Content Authors"), true);
Run Code Online (Sandbox Code Playgroud)
这将为您提供包括间接用户在内的所有用户.
| 归档时间: |
|
| 查看次数: |
1994 次 |
| 最近记录: |