我需要获取用户,该用户已添加到具有完全控制权的 Web 应用程序的 CA 中。请注意,我不希望来自 SPWebObject 的用户,因为 WebApplication 可以包含许多网站集,因此我想直接通过中央管理员获取或验证特定用户的用户权限。
问问题
613 次
1 回答
0
我认为您想为您的 Web 应用程序使用SPWebApplication.Policies属性。我确信这可以更有效地完成,但这是我尝试过的似乎有效的方法:
System.Uri uri = new Uri("http://sp");
SPWebApplication webApplication = SPWebApplication.Lookup(uri);
SPPolicyCollection policyCollection = webApplication.Policies;
SPPolicyRoleCollection policyRoles = webApplication.PolicyRoles;
foreach (SPPolicy p in policyCollection)
{
Console.WriteLine("{0} - {1}", p.DisplayName, p.UserName);
foreach (SPPolicyRole pr in p.PolicyRoleBindings)
{
Console.WriteLine(" {0} - IsAdmin: {1}, FullControl: {2}",
pr.Name,
pr.IsSiteAdmin,
pr.GrantRightsMask == SPBasePermissions.FullMask);
}
}
于 2012-08-03T09:18:43.687 回答