如果您正在计划和准备一个大型ASP.NET MVC项目,您将如何设计和构建需要的全面,可扩展和可维护的安全解决方案
如果你要估计产生这个的时间和精力,并且必须向客户发出qoute,它会是什么?你不必给钱一个数字,只需要收费。
答案 0 :(得分:3)
您无需提供资金,只需支付小费。
您希望某人免费开展您的工作吗?来吧......
无论如何,我会使用代码访问安全性和模拟来实现我所有服务的安全性。检查PrinicpalPermission属性。
控制器/动作级别
对于MVC,只需使用Authorize属性来提供授权。推导它以提供更精细的控制。
安全修整
if (System.Thread.Threading.CurrentThread.CurrentPricinpal.IsInRole("Administrator"))
//show menu item
项目级别
默认MVC实现不可行。您需要手动检查您的行为。
if (!System.Thread.Threading.CurrentThread.CurrentPricinpal.IsInRole(item.RequiredRole))
return View("AccessDenied", null); //return accessdenied view.
我不知道你有什么样的用户。是否都在AD域中注册?然后使用Windows身份验证对用户进行身份验证。它只是一个IIS设置..