验证用户名和密码,无需验证用户身份

时间:2015-06-09 19:05:37

标签: asp.net-web-api asp.net-identity-2

将Asp.Net Identity 2.x与WebApi 2.x(最新的)一起使用,是否可以仅验证给定的用户名和密码,以便了解所提供的信息是否有效,而无需实际验证用户?< / p>

我正在我们的身份服务部分登录,在提供有效凭据后,我必须在EULA licanse协议批准之前不对用户进行身份验证。那就是我在努力的地方......

很抱歉没有提供任何代码,我希望问题很明显:)

1 个答案:

答案 0 :(得分:4)

如果您在项目中创建/定义了UserManager(请参阅here),则可以尝试通过他/她的用户名找到您的用户,如果找到,则调用VerifyHashedPassword方法使用PasswordHasher成员。

string userName = "my-user-name";
string password = "my-password";

var user = await ApplicationUserManager.FindByNameAsync(userName);
if (user != null)
{
    PasswordVerificationResult result = ApplicationUserManager.PasswordHasher.VerifyHashedPassword(user.PasswordHash, password);
}

返回PasswordVerificationResult失败成功 SuccessRehashNeeded

注意:

ApplicationUserManager是我UserManager的实现。