💚 어떤 기능인가요?
SecurityConfig 의 화이트리스트가 존재하지 않는 경로를 가리킨다.
.requestMatchers("/users/send-code", "/users/verify-code", "/users/verify").permitAll()실제 매핑은 AuthController 의 /auth/* 다.
| 선언된 경로 | 실제 경로 |
|---|
POST /users/send-code | POST /auth/send-code |
POST /users/verify-code | POST /auth/verify-code |
GET /users/verify | GET /auth/verify |
/auth/* 는 anyRequest().authenticated() 에 걸리므로:
- 가입 전 인증코드 발송 → 401
- 메일로 받은 인증 링크 클릭 → 401
즉 "가입하려면 먼저 로그인해야" 하는 상태다. EmailVerificationService 가 만드는
인증 링크 자체도 /users/verify 를 가리키고 있어 양쪽이 같이 틀렸다.
AccessControlContractTest 가 이 세 경로를 다루지 않아 잡히지 않았다.
✅ To Dos
💚 어떤 기능인가요?
SecurityConfig 의 화이트리스트가 존재하지 않는 경로를 가리킨다.
실제 매핑은
AuthController의/auth/*다.POST /users/send-codePOST /auth/send-codePOST /users/verify-codePOST /auth/verify-codeGET /users/verifyGET /auth/verify/auth/*는anyRequest().authenticated()에 걸리므로:즉 "가입하려면 먼저 로그인해야" 하는 상태다.
EmailVerificationService가 만드는인증 링크 자체도
/users/verify를 가리키고 있어 양쪽이 같이 틀렸다.AccessControlContractTest가 이 세 경로를 다루지 않아 잡히지 않았다.✅ To Dos
/auth/*)에 맞춤/auth/verify로 교정