我正尝试使用安全主体来检索用户登录的安全角色,如下所示。
PrincipalContext c = new PrincipalContext(ContextType.Domain, "Domain");
using (UserPrincipal rolePrincipal = UserPrincipal.FindByIdentity(c, user.Login))
{
if (rolePrincipal != null)
{
// get the authorization groups - those are the "roles"
var groups = rolePrincipal.GetAuthorizationGroups();
foreach (Principal psID in groups)
{
Console.Out.WriteLine(psID.Sid);
// do something with the group (or role) in question
}
}
}
但是代码失败并在rolePrincipal.GetAuthorizationGroups()行中引发了异常,引发的异常是“在尝试检索授权组时,发生了错误(5)。”
请告知,是否有任何选项可以通过修改代码和名称空间的通用部分而不传递凭据。同样,仅使用此方法而不是返回返回memberof结果的getGroups()才会引发此错误。