34 lines
789 B
C#
34 lines
789 B
C#
namespace Mws.Application.Auth;
|
|||
|
|
|
||
|
|
public class LoginRequest
|
||
|
|
{
|
||
|
|
public string Username { get; set; } = string.Empty;
|
||
|
|
public string Password { get; set; } = string.Empty;
|
||
|
|
}
|
||
|
|
|
||
|
|
public class UserDto
|
||
|
|
{
|
||
|
|
public Guid Id { get; set; }
|
||
|
|
public string Username { get; set; } = string.Empty;
|
||
|
|
public string DisplayName { get; set; } = string.Empty;
|
||
|
|
public Guid RoleId { get; set; }
|
||
|
|
public string RoleName { get; set; } = string.Empty;
|
||
|
|
}
|
||
|
|
|
||
|
|
public class LoginResponse
|
||
|
|
{
|
||
|
|
public string Token { get; set; } = string.Empty;
|
||
|
|
public UserDto User { get; set; } = null!;
|
||
|
|
}
|
||
|
|
|
||
|
|
public interface IPasswordHasher
|
||
|
|
{
|
||
|
|
string Hash(string password);
|
||
|
|
bool Verify(string password, string hash);
|
||
|
|
}
|
||
|
|
|
||
|
|
public interface ITokenService
|
||
|
|
{
|
||
|
|
string CreateToken(Guid userId, string username);
|
||
|
|
}
|