Add initial implementation of API, database, and user management components.
This commit is contained in:
8
MikrocopApi/Services/Interfaces/IAuthService.cs
Normal file
8
MikrocopApi/Services/Interfaces/IAuthService.cs
Normal file
@@ -0,0 +1,8 @@
|
||||
using MikrocopApi.Dtos;
|
||||
|
||||
namespace MikrocopApi.Services;
|
||||
|
||||
public interface IAuthService
|
||||
{
|
||||
Task<LoginResponseDto> LoginAsync(LoginRequestDto request, CancellationToken cancellationToken = default);
|
||||
}
|
||||
8
MikrocopApi/Services/Interfaces/IJwtTokenService.cs
Normal file
8
MikrocopApi/Services/Interfaces/IJwtTokenService.cs
Normal file
@@ -0,0 +1,8 @@
|
||||
using MikrocopDb.Entities;
|
||||
|
||||
namespace MikrocopApi.Services;
|
||||
|
||||
public interface IJwtTokenService
|
||||
{
|
||||
(string AccessToken, DateTime ExpiresAtUtc) Generate(UserEntity user);
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
namespace MikrocopApi.Services;
|
||||
|
||||
public interface IPasswordHashingService
|
||||
{
|
||||
(string Hash, string Salt) HashPassword(string password);
|
||||
bool VerifyPassword(string password, string hashBase64, string saltBase64);
|
||||
}
|
||||
12
MikrocopApi/Services/Interfaces/IUserService.cs
Normal file
12
MikrocopApi/Services/Interfaces/IUserService.cs
Normal file
@@ -0,0 +1,12 @@
|
||||
using MikrocopApi.Dtos;
|
||||
|
||||
namespace MikrocopApi.Services;
|
||||
|
||||
public interface IUserService
|
||||
{
|
||||
Task<UserDto> CreateAsync(CreateUserDto request, CancellationToken cancellationToken = default);
|
||||
Task UpdateAsync(Guid id, UpdateUserDto request, CancellationToken cancellationToken = default);
|
||||
Task<UserDto> GetByIdAsync(Guid id, CancellationToken cancellationToken = default);
|
||||
Task DeleteAsync(Guid id, CancellationToken cancellationToken = default);
|
||||
Task<bool> ValidatePasswordAsync(Guid id, string password, CancellationToken cancellationToken = default);
|
||||
}
|
||||
Reference in New Issue
Block a user