summaryrefslogtreecommitdiffstats
path: root/src/server/Models/Database/User.cs
blob: e03466510743c34404cab692ee9965f9699bb005 (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; }
	public string Password { get; private 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(AppClaims.USER_ID, Id.ToString()),
				new(AppClaims.NAME, Username),
		};
	}
}