public static bool LoginByPWD(String email, string pwd, out string tokenStr, out User user) { user = UserService.GetUser(email); if (user != null) { string temp = SHAEncrypt_Helper.Hash256Encrypt(pwd + user.Salt); if (temp.Equals(user.Pwd)) { long tokenid = SnowFlake_Net.GenerateSnowFlakeID(); var token = TokenSerivce.GenerateToken(tokenid); Token myToken = new Token { TokenId = SnowFlake_Net.GenerateSnowFlakeID(), UserId = user.UserId, Email = user.Email, TokenStr = token, Type = 0, CreatedTime = DateTime.Now }; TokenSerivce.AddToken(myToken); tokenStr = myToken.TokenStr; return(true); } else { tokenStr = ""; return(false); } } else { tokenStr = ""; return(false); } }
public async Task <string> LoginByPWD(String email, string pwd) { User user; string tokenStr; if (email.Contains("@")) { user = UserService.GetUserByEmail(email); } else { user = UserService.GetUserByUserName(email); } if (user == null) { tokenStr = null; user = null; return(null); } var passwordStore = passwordStoreFactory.Instance(user); if (user != null) { var result = passwordStore.VerifyPassword(user.Pwd.Base64ToByteArray(), pwd.Base64ToByteArray(), user.Salt.Base64ToByteArray(), user.PasswordHashIterations); if (result) { long?tokenid = idGenerator.NextId(); //生成token的数据 var tokenContext = TokenSerivce.GenerateTokenContext(tokenid); Token myToken = new Token { TokenId = idGenerator.NextId(), UserId = user.UserId, Email = user.Email, TokenStr = tokenContext, TokenType = 0, CreatedTime = DateTime.Now }; TokenSerivce.SaveToken(myToken); tokenStr = myToken.TokenStr; return(tokenStr); } else { tokenStr = ""; return(null); } } else { tokenStr = ""; return(null); } }
/// <summary> /// 通过Token判断用户是否登录 /// </summary> /// <param name="userid"></param> /// <param name="tokenStr"></param> /// <returns></returns> public bool IsLogin(long?userid, string tokenStr) { Token token = TokenSerivce.GetTokenByTokenStr(tokenStr); if (token != null) { return(true); } else { return(false); } }
public bool LoginByToken(string token) { var user = TokenSerivce.GetUserByToken(token); return(false); }