- 비밀번호 정책 서버 검증 강화 (영대/소문자, 숫자, 특수문자 조합, 8~64자) - 동일 비밀번호 재사용 금지 검증 추가 - 비밀번호 변경 후 세션 무효화 (Refresh Token 삭제) - ChangePasswordResponseDto 신규 (re_login_required 힌트) - 에러코드 추가 (PasswordPolicyViolation, PasswordReuseForbidden) - AuthController Swagger 문서 보강 Closes #251
18 lines
820 B
C#
18 lines
820 B
C#
using System.ComponentModel.DataAnnotations;
|
|
|
|
namespace SPMS.Application.DTOs.Auth;
|
|
|
|
public class ChangePasswordRequestDto
|
|
{
|
|
[Required(ErrorMessage = "현재 비밀번호를 입력해주세요.")]
|
|
public string CurrentPassword { get; set; } = string.Empty;
|
|
|
|
[Required(ErrorMessage = "새 비밀번호를 입력해주세요.")]
|
|
[MinLength(8, ErrorMessage = "비밀번호는 8자 이상이어야 합니다.")]
|
|
[MaxLength(64, ErrorMessage = "비밀번호는 64자 이하여야 합니다.")]
|
|
[RegularExpression(
|
|
@"^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[!@#$%^&*()_+\-=\[\]{};':""\\|,.<>\/?]).{8,}$",
|
|
ErrorMessage = "비밀번호는 영문 대/소문자, 숫자, 특수문자를 각각 1자 이상 포함해야 합니다.")]
|
|
public string NewPassword { get; set; } = string.Empty;
|
|
}
|