【发布时间】:2012-12-14 23:09:48
【问题描述】:
我是网络安全的新手,所以我不想自己实现。我计划通过 VS2012 模板为 ASP.NET MVC Internet 应用程序使用 SimpleMembership。问题是我需要通过 Web API 传递数据。
我计划对我的 Web API 使用基本身份验证,所以我只需要在 http 标头中传递用户名/密码。我可以使用 Thinktecure.IdentityModel 拦截消息。这是一个使用 ASP.NET Membership 的example:
authConfig.AddBasicAuthentication((userName, password) =>
Membership.ValidateUser(userName, password));
我可以用我自己的 bool 函数替换 Membership.ValidateUser。我已经使用用户名/密码成功查询了我的自定义数据库,一切正常。但是,我使用模板的用户数据库,因为我不想存储字符串(甚至编码)密码。
我不清楚如何使用 SimpleMembership 的数据库手动验证凭据。我可以获取用户配置文件,但不知道如何检查配置文件的密码。
UserProfile user = context.UserProfiles.Find(1);
==OUTPUT==
user
UserId: 1
UserName: "bob"
你知道如何检查输入的密码是否与现有用户的密码匹配吗?
感谢您的帮助!
【问题讨论】:
标签: asp.net-mvc entity-framework asp.net-web-api