예제 #1
0
        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");
        }