public async Task ValidateAsync(ResourceOwnerPasswordValidationContext context) { LinXi_Model.db_erpContext db = new LinXi_Model.db_erpContext(); var user = db.AcUserinfo.FirstOrDefault(u => u.Account == context.UserName && context.Password == u.Pwd); if (user != null) { context.Result = new GrantValidationResult( subject: context.UserName, authenticationMethod: "custom", claims: new Claim[] { //账号id new Claim("account_id", user.Id.ToString()), //操作人id new Claim("operator_id", user.StaffId.ToString()), //操作人名字 new Claim("operator_name", user.Staff.Name.ToString()) }); } else { //验证失败 context.Result = new GrantValidationResult(TokenRequestErrors.InvalidGrant, "invalid custom credential"); } //context.Result = new GrantValidationResult(TokenRequestErrors.InvalidGrant, "invalid custom credential"); }
public async Task ValidateAsync(ResourceOwnerPasswordValidationContext context) { LinXi_Model.db_erpContext db = new LinXi_Model.db_erpContext(); //根据context.UserName和context.Password与数据库的数据做校验,判断是否合法 var user = db.AcUserinfo.FirstOrDefault(u => u.Account == context.UserName && context.Password == u.Pwd); if (user != null) { context.Result = new GrantValidationResult( subject: context.UserName, authenticationMethod: "custom", claims: new Claim[] { new Claim("UserId", user.Id.ToString()) }); } else { //验证失败 context.Result = new GrantValidationResult(TokenRequestErrors.InvalidGrant, "invalid custom credential"); } //context.Result = new GrantValidationResult(TokenRequestErrors.InvalidGrant, "invalid custom credential"); }