public override async Task GrantResourceOwnerCredentials( OAuthGrantResourceOwnerCredentialsContext context) { //调用后台的登录服务验证用户名与密码 var user = await _userApp.GetUser(context.UserName, context.Password); if (user != null) { var oAuthIdentity = new ClaimsIdentity(context.Options.AuthenticationType); oAuthIdentity.AddClaim(new Claim(ClaimTypes.Name, context.UserName)); context.Validated(oAuthIdentity); await base.GrantResourceOwnerCredentials(context); } else { throw new Exception("ERROR Incorrect username or password!"); } }
public async Task TestMD5() { string userName = "******"; string password = "******"; string passMd5 = Md5.GetMd5Hash(password); User user = new User(); user.Id = Guid.NewGuid().ToString(); user.UserName = userName; user.Password = passMd5; user.IsActive = "Y"; user.IsDelete = "N"; user.CreateDate = DateTime.Now; user.UpdateTime = DateTime.Now; UserApp _userApp = new UserApp(new UserDapperRepository()); var saveRt = await _userApp.Save(user); Assert.IsTrue(saveRt); var checkUser = await _userApp.GetUser(userName, password); Assert.AreEqual(checkUser.UserName, userName); Assert.AreEqual(checkUser.Password, passMd5); }