asp.net-mvc-3 – 从自定义授权属性访问角色
发布时间:2020-05-22 17:16:43 所属栏目: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();
} (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 使用ASP.NET MVC和JQuery表单插件/文件上传检测IsAjaxReque
- 身份验证 – 如何使用ASP.NET身份在Web API 2中实现双因素身
- 在ASP.NET页面上显示XML
- asp.net-mvc – 使用Asp.net Mvc缩略图
- asp.net-membership – MiniProfiler和SqlMembershipProvid
- asp.net-mvc – 使ASP.NET绑定指定media =屏幕的CSS bundle
- asp-classic – 经典ASP页面可以在Azure中运行吗?
- ASP.NET和会话 – 新的浏览器实例与新的浏览器窗口
- 如何处理ASP.NET vNext中的调试/发布配置转换
- 在asp.net Gridview控件中触发的事件序列是什么?
推荐文章
站长推荐
- 页面刷新导致ASP.NET应用程序中重复的POST
- asp.net-mvc – 如何使actionFilter on action方
- asp.net-mvc-3 – 将nhibernate实体序列化为json
- asp.net – context.Response.Charset = Encodin
- asp.net – MS Chart控件创建的临时文件应该放在
- asp.net-mvc-4 – 在MVC4环境中使用Razor和Angul
- asp.net-mvc – 控制器的实例上的HttpContext在A
- asp.net-mvc – 如何手动创建简单的成员资格sql表
- asp.net-mvc-3 – MVC3 Html.BeginForm – 在Rou
- asp.net-mvc – 使用web.config关闭MVC中的身份验
热点阅读
