Asp.net 如何检查用户是否在管理员组中
如何获取用户的组或用户是否在管理组中 我正在使用.NETFramework3.5Web应用程序 我得到的用户名如下:Asp.net 如何检查用户是否在管理员组中,asp.net,.net,vb.net,Asp.net,.net,Vb.net,如何获取用户的组或用户是否在管理组中 我正在使用.NETFramework3.5Web应用程序 我得到的用户名如下: Dim strUser As String = System.Web.HttpContext.Current.User.Identity.Name.ToUpper 现在,我需要检查这个用户是否在管理员组中?或者,获取用户的all组 请与我分享一些帮助我实现这一目标的东西 谢谢。如果您有超过1名管理员,您可以使用以下两种方法确定他是否是管理员或他/她属于哪个组 var is
Dim strUser As String = System.Web.HttpContext.Current.User.Identity.Name.ToUpper
现在,我需要检查这个用户是否在管理员组中?或者,获取用户的all组
请与我分享一些帮助我实现这一目标的东西
谢谢。如果您有超过1名管理员,您可以使用以下两种方法确定他是否是管理员或他/她属于哪个组
var isAdmin =((System.Security.Principal.WindowsPrincipal)this.HttpContext.User).IsInRole(System.Security.Principal.WindowsBuiltInRole.Administrator)
1> 更改数据库表
向用户登录数据库中再添加一行,以接受整数值、将其命名为任何您想要的名称或将其命名为组
现在,如果用户是管理员组,则将1传递给所有管理员2,并相应地传递给员工
稍后,如果您想检查他或她属于哪个组,只需检查他或她拥有的组值
2> 如果你要分类的人少了
把他们的名字写进代码本身,并使用字符串比较!
虽然我建议你用第一种方法!这是一个很好的做法 但是,用户名将从用户上下文中获取,因为这是web应用程序。因此,我确实有用户名字符串“domainname\username”,我需要对此进行检查。错误为
无法将类型为“System.Security.Principal.WindowsIdentity”的对象强制转换为类型为“System.Security.Principal.WindowsPrincipal”。
将此代码用作Dim r as Boolean=CType(HttpContext.Current.User.Identity,System.Security.Principal.WindowsPrincipal).IsInRole(System.Security.Principal.WindowsBuiltInRole.Administrator)
Dim r As Boolean=CType(HttpContext.Current.User,System.Security.Principal.WindowsPrincipal).IsInRole(System.Security.Principal.WindowsBuiltInRole.Administrator)
这很有效。谢谢。抱歉,检查了错误的副本:检查