public async Task <LoginRespose> CheckLogin(VmAdminLogin vm) { LoginRespose result = new LoginRespose() { Success = false }; try { var list = await _manager.GetAllAsync(c => c.user_name == vm.txtUserName); if (null == list) { result.Message = "账号不存在!"; return(result); } var managers = list.ToList(); if (managers.Count == 0) { result.Message = "账号不存在!"; return(result); } if (managers.Count > 1) { result.Message = "存在多个相同账号!"; return(result); } var model = managers.FirstOrDefault(); if (!model.password.Equals(vm.txtPassword.ToMd5())) { result.Message = "登录密码不正确!"; return(result); } if (model.is_lock == 1) { result.Message = "该账号已被锁定!"; return(result); } var claimsIdentity = new ClaimsIdentity("ApplicationCookie"); claimsIdentity.AddClaim(new Claim(ClaimTypes.Name, model.user_name)); var security = Guid.NewGuid().ToString(); claimsIdentity.AddClaim(new Claim(ClaimTypes.GroupSid, "1")); claimsIdentity.AddClaim(new Claim(ClaimTypes.Role, "")); claimsIdentity.AddClaim(new Claim("http://schemas.microsoft.com/accesscontrolservice/2010/07/claims/identityprovider", "ASP.NET Identity")); claimsIdentity.AddClaim(new Claim(ClaimTypes.System, "-1")); claimsIdentity.AddClaim(new Claim("AspNet.Identity.SecurityStamp", security)); claimsIdentity.AddClaim(new Claim(ClaimTypes.NameIdentifier, model.Id.ToString())); result.Success = true; result.Identity = claimsIdentity; return(result); } catch (Exception) { } return(result); }
public async Task GetToken() { if (!string.IsNullOrEmpty(Token)) { return; } string Rst = await DoRequest("POST", new LoginRequest { username = Username, password = Password }, API : "accounts/tokens"); LoginRespose Response = JsonConvert.DeserializeObject <LoginRespose>(Rst); Token = Response.token; }