public string Login(string username, string password) { var user = FindUser(username); if (user == null) { return(null); } if (passwordEncrypt.Hash(password, user.Salt) != user.Password) { return(null); } var tokenHandler = new JwtSecurityTokenHandler(); var something = configuration["Keys:JWTSecret"]; var key = Encoding.ASCII.GetBytes(something); var tokenDescriptor = new SecurityTokenDescriptor { Subject = new ClaimsIdentity(new Claim[] { new Claim(ClaimTypes.Name, user.Id.ToString()) }), Expires = DateTime.UtcNow.AddDays(7), SigningCredentials = new SigningCredentials(new SymmetricSecurityKey(key), SecurityAlgorithms.HmacSha256Signature) }; var token = tokenHandler.CreateToken(tokenDescriptor); return(tokenHandler.WriteToken(token)); }
public void PasswordEncyrption_Hashed_ReturnsCorrectWhenChecked() { // Arrange var password = "******"; var encrypt = new PasswordEncryption(); // Act var result = encrypt.HashReturnSalt(password); // Assert result.Item2.Should().Be(encrypt.Hash(password, result.Item1)); }