将MVC应用程序从传统身份验证更改为无Cookie的实用性如何?

时间:2010-05-31 11:54:59

标签: asp.net-mvc authentication architecture

我有一个用MVC编写的应用程序,它使用常规的.Net Forms身份验证。没有什么特别新鲜或令人兴奋的事情。

我的客户现在已经要求用户能够在同一台计算机上但在不同浏览器中登录该应用程序,或者在同一浏览器中登录不同的选项卡。在我看来,他要求更改范围,以便将身份验证转移到无cookie而不是当前的设计。

在MVC中没有任何经验,我很想知道在我开始之前通过尝试这对我有多大的伤害。有更好的方法吗?我应该考虑什么?

任何建议表示赞赏。

1 个答案:

答案 0 :(得分:2)

  

在不同的浏览器中

这应该很容易,因为不同的浏览器不共享cookie。

  

或同一浏览器中的不同标签

这有点困难,因为在浏览器范围内使用相同的cookie,因此标签之间没有区别。

您可以尝试向所有链接添加一些身份验证令牌,例如:

http://site.com/home?token=afdaewdf4393cffjedcifa
http://site.com/account?token=afdaewdf4393cffjedcifa

等等。

在所有MVC生成的链接中使用相同的参数相对容易,因为当用户在视图之间导航时(MVC设计),相同的参数会自动复制到其他链接中。