内置ASP的替代方案.. NET身份验证模型


Alternatives to the baked-in ASP.NET authentication model

当我看到开发人员如何在其他web框架中实现登录和"身份验证"时,看起来他们大多数时候只是设置了一个服务器会话并检查是否设置好了,然后才让人们进入。我们甚至在ASP经典版中也这样做过,看起来效果还不错。

如RoR: http://www.codeproject.com/Articles/575551/User-Authentication-in-Ruby-on-RailsPhp: http://www.wikihow.com/Create-a-Secure-Login-Script-in-PHP-and-MySQL

实现自定义成员资格提供者对于登录用户和会话来说似乎是一段很长的路要走。完成后放弃。坦率地说,我不确定我是否理解不使用会员提供程序的安全风险,尽管我已经使用了很多年。

我有一些想法

Forms身份验证不依赖于成员资格提供程序。您可以单独使用Forms Authentication,这就是我过去所做的。这是一篇描述如何实现简单表单身份验证的文章。

没有什么可以阻止您使用Session变量来跟踪用户。只要遵循基本的安全编码原则,这样做也没有安全隐患:

  1. 永远不要相信用户输入
  2. 始终在数据访问中使用参数/存储过程
  3. 加密/散列您存储的任何密码。