asp.net-mvc-3 – 从自定义授权属性访问角色
发布时间:2020-09-21 08:37:55 所属栏目:asp.Net 来源:互联网
导读:我正在创建自己的自定义authorize属性,覆盖AuthorizeCore方法,并想知道是否可以访问已传递到authorize属性标记的角色. 所以,例如,如果我有这个: [CustomAuthorize(Roles = Administrator, Sales, Entry)] 是否可以从这里访问这些: protected override bool
我正在创建自己的自定义authorize属性,覆盖AuthorizeCore方法,并想知道是否可以访问已传递到authorize属性标记的角色. 所以,例如,如果我有这个: [CustomAuthorize(Roles = "Administrator,Sales,Entry")] 是否可以从这里访问这些: protected override bool AuthorizeCore(HttpContextBase httpContext) { } 然后我可以拆分字符串并创建一个数组. 解决方法你可以这个.Roles这是一个你需要拆分的字符串.源代码是免费提供的. 默认的AuthorizeCore实现: protected virtual bool AuthorizeCore(HttpContextBase httpContext) { if (httpContext == null) { throw new ArgumentNullException("httpContext"); } IPrincipal user = httpContext.User; if (!user.Identity.IsAuthenticated) { return false; } if (_usersSplit.Length > 0 && !_usersSplit.Contains(user.Identity.Name,StringComparer.OrdinalIgnoreCase)) { return false; } if (_rolesSplit.Length > 0 && !_rolesSplit.Any(user.IsInRole)) { return false; } return true; } 它们有一个内部拆分功能,如下所示: internal static string[] SplitString(string original) { if (String.IsNullOrEmpty(original)) { return new string[0]; } var split = from piece in original.Split(',') let trimmed = piece.Trim() where !String.IsNullOrEmpty(trimmed) select trimmed; return split.ToArray(); } (编辑:岳阳站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 在HiddenField asp.net中存储一个字符串数组
- asp.net core标签助手的高级用法TagHelper+Form
- asp.net-mvc – 从一个项目到另一个项目调用控制器
- 如何在ASP.NET页面上使用框架?
- asp.net – 未知的服务器标签’ajaxToolkit:CalendarExten
- ASP.NET core Web中使用appsettings.json配置文件的方法
- asp.net-mvc-3 – RedirectResult Object作为URL中的参数
- asp.net – 为什么当试图保存更改时,GridView行“null”的D
- 利用ASP.NET MVC和Bootstrap快速搭建个人博客之后台dataTab
- asp.net-mvc – ELMAH和SQL Server 2008 R2?
推荐文章
站长推荐
- asp.net – 选择框更改事件中的setTimeout
- asp.net-mvc – 在一个页面中以两种不同的形式使
- ASP.NET MVC4 Razor模板简易分页效果
- 如何合理地构建我的ASP.NET MVC 2项目与区域
- asp.net – 按钮属性: – commandName和Command
- SimpleMembership与ASP.NET MVC 4中的自定义数据
- ASP.Net:为什么我的按钮的点击/命令事件没有在转
- asp.net – 确定当前页面是否需要授权?
- ASP.NET 程序中删除文件夹导致session失效问题的
- asp.net – 使用app_offline.htm使应用程序脱机,
热点阅读