我想通过cookie控制对我的应用程序的某些页面的访问。但我只想从一个地方协调这一点。我想过在Layout.cshtml I.E中加入一个支票。这样所有页面使用这个布局将自动执行。这很好吗?控制Cookie访问页面
编辑:此应用程序的安全性,它不关心。
我想通过cookie控制对我的应用程序的某些页面的访问。但我只想从一个地方协调这一点。我想过在Layout.cshtml I.E中加入一个支票。这样所有页面使用这个布局将自动执行。这很好吗?控制Cookie访问页面
编辑:此应用程序的安全性,它不关心。
不,这不好,因为任何人都可以轻松操纵cookie。
为什么你不想使用已经可用的普通认证和授权技术?
您违反了MVC的核心原则之一– 从来没有把真正的逻辑放在视图。
相反,你应该创建一个ActionFilter。
您还应该弄清楚如何保护cookie;你应该使用ASP.Net的现有会员系统
谢谢,明白了。但是这个ActionFilter是如何工作的? –
http://msdn.microsoft.com/en-us/library/dd410209(v=vs.100).aspx http://msdn.microsoft.com/en-us/magazine/gg232768.aspx – SLaks
使用cookie控制对页面的访问听起来不是一个好主意。您将不得不创建一种保护cookie的方法,这并不容易。没有这一点,你的认证将很容易被欺骗。
我建议您使用MVC 4的内置身份验证和授权机制,该机制经过了充分测试,并为此构建。这里是one article让你开始。
使用MVC4的[Authorize]
和[AllowAnonymous]
属性,将网站的某些部分限制为授权用户时,您可以非常灵活。
我已经发布了一个更长的使用上述属性作为answer to another SO question的示例。
纠正我if我错了,但授权和允许匿名是关于授权,但没有说任何关于认证。 ASP.NET的成员资格仍然可以在ASP.NET MVC中使用,并且仍然基于cookie(如果使用正确的话,它会很好地工作) –
@SimonMourier这是正确的,您还需要身份验证,如果您需要身份验证开始一个新的MVC4项目,我相信(也很容易激活OAuth认证)。我想说的一点是,你可以非常灵活地控制使用这些属性访问某些页面。 –
正如我上面提到的安全,在这个特定的情况下,它并不那么重要。谢谢... –
您应该在控制器/页面上使用Authorize属性而不是Cookie ,并将页面限制为某些角色并将用户分配给角色。
谢谢。在这种情况下,安全性不是问题。它的内部网应用程序。控制我的意思是更多的用户体验方面。 –