具有自定义角色的ASP.NET MVC和Windows身份验证
发布时间:2020-05-24 05:37:23 所属栏目:asp.Net 来源:互联网
导读:我试图在我的ASP.NET MVC2应用程序中实现 Windows身份验证. 我遵循官方文件建议的所有步骤: authentication mode=Windows /authorization deny users=? //authorization 我已经指定了NTLM身份验证.到现在为止还挺好.一切都很好 我想检查登录到我的数据库的用
|
我试图在我的ASP.NET MVC2应用程序中实现
Windows身份验证.
<authentication mode="Windows" /> <authorization> <deny users="?" /> </authorization> 我已经指定了NTLM身份验证.到现在为止还挺好.一切都很好 在我的互联网应用程序中,我有一个用户输入数据的表单.表单发布到控制器,该控制器检查所有内容,并与登录用户的用户(和角色)一起创建Cookie. 在我的global.asax中,我已经陷入了AuthenticateRequest事件,在那里我读取了cookie,并创建了一个自定义的主体,我使用全部的应用来检查授权. 如何使用Windows身份验证实现? 解决方法只需创建一个新的主体并将其分配给Global.asax中的用户和线程(或使用操作过滤器).protected void Application_AuthenticateRequest(object sender,EventArgs args)
{
if(HttpContext.Current != null)
{
String [] roles = GetRolesFromSomeDataTable(HttpContext.Current.User.Identity.Name);
GenericPrincipal principal = new GenericPrincipal(HttpContext.Current.User.Identity,roles);
Thread.CurrentPrincipal = HttpContext.Current.User = principal;
}
}
如果用户没有任何匹配的角色,则可以使用web.config authoirzation元素禁止应用使用它们: <authorization> <allow roles="blah,whatever"/> <deny users="*"/> </authorization> (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 当空的asp.net时,ListView LayoutTemplate不显示
- ASP.NET /数据库性能清单
- asp.net – 如何跟踪IIS服务器性能
- asp.net – 为什么HttpUtility.UrlEncode(HttpUtility.UrlD
- asp.net – 添加新行到datatable的顶部
- asp.net – 如何修复“’ddlAssignedTo’有一个无效的Selec
- asp.net – .net 4.6框架是在位升级,那么.net framework 4.
- asp.net – 引用相同主键的两个外键
- asp.net – 在MVC5中使用java脚本代码 – 放在哪里
- asp.net-mvc-4 – Dapper.net如何创建地图
