asp.net-mvc – 如何使用mvcSiteMapProvider实现安全性?
发布时间:2020-12-16 03:59:20 所属栏目:asp.Net 来源:网络整理
导读:我需要使用我的mvcSiteMapProvider V4软件实现角色安全性.我正在使用它与MVC3. 示例mvcSiteMap代码: mvcSiteMapNode roles="Admin" title="Your Subscription (All Users)" controller="SOU" action="ListSubscribers" 此角色属性值无效: mvcSiteMapNode r
我需要使用我的mvcSiteMapProvider V4软件实现角色安全性.我正在使用它与MVC3.
示例mvcSiteMap代码: <mvcSiteMapNode roles="Admin" title="Your Subscription (All Users)" controller="SOU" action="ListSubscribers"> 此角色属性值无效: <mvcSiteMapNode roles="NoAdmin" title="Your Subscription (All Users)" controller="SOU" action="ListSubscribers"> 这是一样的.如果管理员登录,我希望上述内容不起作用?如果只有用户登录,我希望第一个例子能够工作. ……但没有效果. 非常感谢 解决方法
默认情况下不启用安全修整.您需要做的第一件事就是打开它.
内部DI(web.config): <add key="MvcSiteMapProvider_SecurityTrimmingEnabled" value="true"/> 外部DI(在MvcSiteMapProvider模块中): bool securityTrimmingEnabled = true; // First line in the module 然后,您应该将MVC [Authorize]属性放在要保护的每个操作方法上.在MVC4中,您还可以将其置于控制器级别或全局注册,然后使用[AllowAnonymous]属性有选择地允许未经过身份验证的用户允许操作方法. public class FilterConfig { public static void RegisterGlobalFilters(GlobalFilterCollection filters) { filters.Add(new AuthorizeAttribute()); } } [Authorize(Roles="Admin,Manager")] public class MyController { // Everyone has access [AllowAnonymous] public ActionResult Index() { return View(); } // Only Admin and Manager roles have access,everyone else is denied public ActionResult About() { return View(); } } XML中的roles属性是为了向后兼容ASP.NET.对于MVC,唯一真正的安全性是使用[Authorize]属性(或通过继承它自己的方案),因为它是保证资源无法通过备用路由访问的唯一方法. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-web-api – ASP.NET WEB API 2 OWIN身份验证unfpor
- asp.net-mvc – 动作过滤器异常
- ASP.NET MVC5 Bootstrap CSS乱搞导航?
- asp.net – 如何在Firefox中使用Javascript设置DIV宽度/高度
- asp.net-mvc – ASP.NET MVC应用程序运行多长时间
- asp.net-mvc – 在什么级别可以使用SPDY?
- asp.net-web-api – ASP.NET核心Web API:为什么在Get请求中
- WCF技术剖析之三十:一个很有用的WCF调用编程技巧[下篇]
- 动态ASP.net Web表单
- asp.net-mvc – 找不到CrystalImageHandler.aspx
推荐文章
站长推荐
- 需要在asp.net中以分钟为单位查找音频文件的长度
- .net – 在项目之间共享MasterPages的最佳方法是
- 我在哪里可以获得asp.net身份的rtm控制器模板?
- asp.net-mvc – Visual Studio Online网站以调试
- asp.net-mvc – 在visual studio 2013中使用angu
- asp.net-mvc – 从自定义HTML Helper访问WebView
- 谈谈你最熟悉的System.DateTime[上篇]
- asp.net – .NET核心2.0 cookie身份验证 – 不重
- asp.net – 在int类型的Web服务参数上设置minOcc
- asp.net-mvc – IdentityDbContext vs Reb的DbCo
热点阅读