MVC4存储和调用用户密码

时间:2012-10-31 14:33:42

标签: asp.net-mvc security passwords

目前我正在使用MVC4开发一个项目,其中我们有一个服务引用,查看数据库以返回我们的内容。服务引用要求我每次拨打电话时都提供用户名/密码。

最佳做法是什么?我应该加密密码然后将其保存到cookie还是我应该向用户发送Auth Token?或者会有第三种选择吗?

1 个答案:

答案 0 :(得分:2)

首先。别。只是不要。永远不会存储用户密码。决不。我是认真的。决不。在任何情况下。没有缓解因素。没有什么比这更重要了,你应该打破这个规则。永远。如果您唯一的选择是违反此规则(例如,来自您无法控制的第三方服务),则拒绝执行此操作。让某人,某个地方让步。如果有必要,请辞掉工作。我很认真。

如果您保存用户密码,则会破坏用户与软件之间的信任。如果被黑客攻击,你就可以发现密码,并且这些密码可以被重新用来做令人讨厌的事情(例如进入某人的银行账户并拿走所有的钱)。如果您保存密码,您将成为整个互联网安全问题的一部分。我不在乎你认为自己有多小,或者数据与数据无关。有人密码控制访问您可能不知道的许多重要事项。

所以不要这样做。只是不要。

现在,解决你的真正问题。如何处理这个问题取决于具体情况。此服务是否与Web服务器位于同一域中?它在你的控制之下吗?你能改变界面吗?你在开发这项服务吗?请解释一下情况。