我正在使用Windows身份验证,并想知道登录用户是否属于该组'内置管理员'。我使用以下代码剪切在我的MVC4-Application中找到它:
// user identity
var lIdentity = HttpContext.User.Identity as WindowsIdentity;
// get all Group-Sids, the current users belongs to.
var lSids = lIdentity.Groups;
内置管理员组(SID S-1-5-32-544)未在lSids
中列出。
但是当我在同一个用户上使用cmd whoami /groups
时,会显示SID S-1-5-32-544。
如果登录用户属于内置管理员组,我怎样才能在我的MVC4中找到。
答案 0 :(得分:0)
您可以通过访问 Claims 而不是 Groups 来实现这一点。
这是如何做到的:
var claims = lIdentity.Claims;
var claimSids = claims.Select(claim => claim.Value).ToList();