- verify API: verifySessionId 기반 입력 지원 (email 하위호환) - verify API: 시도 횟수 5회 제한 (30분 TTL) - verify API: 응답에 verified, nextAction 필드 추가 - resend API 신규: POST /v1/in/auth/email/verify/resend - resend API: 60초 쿨다운, 기존 코드 자동 무효화 - email_verify TTL 1시간→5분 변경 (signup/login 포함) - ErrorCodes 추가: VerifyResendCooldown(116), VerifyAttemptExceeded(117) Closes #205
21 lines
1.0 KiB
C#
21 lines
1.0 KiB
C#
using SPMS.Application.DTOs.Account;
|
|
using SPMS.Application.DTOs.Auth;
|
|
|
|
namespace SPMS.Application.Interfaces;
|
|
|
|
public interface IAuthService
|
|
{
|
|
Task<SignupResponseDto> SignupAsync(SignupRequestDto request);
|
|
Task<LoginResponseDto> LoginAsync(LoginRequestDto request);
|
|
Task<TokenRefreshResponseDto> RefreshTokenAsync(TokenRefreshRequestDto request);
|
|
Task LogoutAsync(long adminId, string accessToken);
|
|
Task ChangePasswordAsync(long adminId, ChangePasswordRequestDto request);
|
|
Task<EmailCheckResponseDto> CheckEmailAsync(EmailCheckRequestDto request);
|
|
Task<EmailVerifyResponseDto> VerifyEmailAsync(EmailVerifyRequestDto request);
|
|
Task<EmailResendResponseDto> ResendVerificationAsync(EmailResendRequestDto request);
|
|
Task ForgotPasswordAsync(PasswordForgotRequestDto request);
|
|
Task ResetPasswordAsync(PasswordResetRequestDto request);
|
|
Task<ProfileResponseDto> GetProfileAsync(long adminId);
|
|
Task<ProfileResponseDto> UpdateProfileAsync(long adminId, UpdateProfileRequestDto request);
|
|
}
|