我正在使用 Active Directory 对 Intranet 站点的用户进行身份验证。我想根据用户在 Active Directory 中所在的组来优化经过身份验证的用户。有人可以向我展示或指出如何在 ASP.NET 4.0 (VB) 中查找用户所在的组吗?
我意识到这篇文章已经很旧了,但我想我可以用我正在使用的流程来更新它。 (ASP.NET 4.0,VB)
如果在域上使用集成 Windows 安全性。
Page.User.IsInRole("domain\GroupName")
将检查经过身份验证的用户是否是指定组的成员。
如果您想检查除经过身份验证的用户之外的其他用户组成员身份。
检查具有相同用户主体的多个组的两个阶段:
Dim MyPrincipal As New System.Security.Principal.WindowsPrincipal _
(New System.Security.Principal.WindowsIdentity("UserID"))
Dim blnValid1 As Boolean = MyPrincipal.IsInRole("domain\GroupName")
用于签入单个组的单阶段:
Dim blnValid2 As Boolean = New System.Security.Principal.WindowsPrincipal _
(New System.Security.Principal.WindowsIdentity("userID")).IsInRole("domain\GroupName")
注意:: IsInRole 方法确实适用于嵌套组。如果您有一个顶级组,其中包含一个作为成员的子组,并且该用户是该子组的成员。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)