public IActionResult LogIn([FromBody] LogInInput logInInput) { var res = _usersSvc.GetLoginResult(logInInput); if (res.IsSuccess) { //redis 存储 //string data = JsonConvert.SerializeObject(res.Data); //Guid guid = AddCurUserInfo(JsonConvert.DeserializeObject<Domain.entity.Users>(data)); //Dictionary<string, string> dicRes = new Dictionary<string, string> //{ // { "userToken", guid.ToString() } //}; //ClaimsIdentity 授权 var authResult = _tokenSvc.CreateToken(res.Data as Users); ResponseResult.Result = 1; ResponseResult.Data = authResult; } else { ResponseResult.Result = 0; ResponseResult.Message = res.Message; } return(Ok(ResponseResult)); }
/// <summary> /// 账号密码验证 /// </summary> /// <param name="input"></param> /// <param name="member"></param> private void MobilePasswordValid(LogInInput input, out bool isSuccess, out Users user) { user = _userRepository.GetModel(new { input.UserName }); if (user == null || !CheckPwd(input.Password, user.Userpass)) { isSuccess = false; } else { isSuccess = true; } }
/// <summary> /// 登录 /// </summary> /// <param name="input"></param> /// <returns></returns> public OperationResult GetLoginResult(LogInInput input) { bool isSuccess; Users user; MobilePasswordValid(input, out isSuccess, out user); if (!isSuccess) { return(new OperationResult { IsSuccess = false, Message = "登录验证失败" }); } else { return(MemberValid(user)); } }
public async Task <AjaxResponse> LogIn(LogInInput input) { CheckModelState(); var logInResult = await GetLogInResultAsync( input.UsernameOrEmailAddress, input.Password, input.TenancyName ); var ticket = new AuthenticationTicket(logInResult.Identity, new AuthenticationProperties()); var currentUtc = new SystemClock().UtcNow; ticket.Properties.IssuedUtc = currentUtc; ticket.Properties.ExpiresUtc = currentUtc.Add(TimeSpan.FromDays(7)); return(new AjaxResponse(OAuthBearerOptions.AccessTokenFormat.Protect(ticket))); }
public async Task <AdminTokenOutput> LogInAsync([FromBody] LogInInput input) { // Если решусь добавить refresh-токен, то надо не забыть обернуть в транзакцию (т.к. refresh-токен буду хранить в базе) return(await _authorizationService.LogInAsync(input)); }