summaryrefslogtreecommitdiffstats
path: root/src/server/Models/Database/User.cs
blob: 1215f4e4a9a00780177069c821e922d0a6294caa (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
namespace IOL.BookmarkThing.Server.Models.Database;

public class User : Base
{
	public User(string username) => Username = username;

	public string Username { get; set; }
	public string Password { get; set; }

	public void HashAndSetPassword(string password) {
		Password = PasswordHelper.HashPassword(password);
	}

	public bool VerifyPassword(string password) {
		return PasswordHelper.Verify(password, Password);
	}

	public IEnumerable<Claim> DefaultClaims() {
		return new Claim[] {
				new(ClaimTypes.NameIdentifier, Id.ToString()),
				new(ClaimTypes.Name, Username),
		};
	}
}