코딩과 결혼합니다

231021 - [Game_Crew]트러블 슈팅 : 지옥의 304 본문

코딩과 매일매일♥/Game_Crew

231021 - [Game_Crew]트러블 슈팅 : 지옥의 304

코딩러버 2023. 10. 21. 14:12
728x90

이전에 회원가입과 로그인이 잘 되는 걸 보고 풀리퀘 날렸었는데..

이상하게 로그인은 되는데 signup이 죽어도 안 됨.

 

서버는 잘 돌아가는데 포스트맨으로 기능 테스트를 하려 하면 403이 떴다.

 

  1. POST방식으로 보내는지 ok
  2. 경로를 제대로 입력했는지 ok
  3. securityFilterChain 메서드 내부에서 정의된 권한 설정이 일치하는지 ok인 줄 알았으나

정말 바보 같은 실수를 하고 있었다. 이 부분을 수정하면서 ""를 제대로 구분 안 해준 것.

이거 찾느라 몇 시간 버렸다.


이메일 인증 구현을 했지만 여전히 304 에러가 뜬다. 

 

  1. 인증 토큰의 부재 또는 유효하지 않음 확인 ⭕
    - 회원가입때 이메일 인증하는 거라 인증 토큰이 따로 필요하지 않다.

  2. CORS 정책 ⭕
    - @CrossOrigin 어노테이션을 사용해 봄 ➡️ 여전히 403

  3. Spring Security 설정 ⭕
    - /auth 로 시작하는 api로 제한이 걸려있지 않다.

  4. 서버 내부 에러 ✔️
✏️문제
java.io.IOException: Server is not trusted: smtp.naver.com
SMTP 서버의 SSL 인증서가 Java 환경에 의해 신뢰되지 않기 때문에 발생한다. 이는 일반적으로 SMTP 서버의 SSL 인증서가 유효하지 않거나, 자체 서명된 인증서를 사용하고 있거나, 또는 Java 키 저장소에 해당 인증서가 추가되지 않았을 때 발생한다.
✏️시도
properties에 SSL 설정 + keystore -  resources 파일에 추가

server.ssl.key-store=
server.ssl.key-store-type=
server.ssl.key-store-password=

✏️새로운 문제
400 - Bad Request
This combination of host and port requires TLS.
클라이언트가 서버와의 통신에 필요한 Transport Layer Security(TLS)를 설정하지 않았을 때 발생
✏️확인 - TLS 설정도 잘 되어있다.
spring.mail.properties.mail.smtp.ssl.enable=true
spring.mail.properties.mail.smtp.starttls.enable=true
✏️시도
SSL을 설정해놓고 http: ~~ 로 쓰고 있었다. https: ~~ 로 경로 변경해 준 뒤에
port번호를 465 ➡️ 995 로 바꿔줌.
인증번호가 터미널에 뜨긴 했지만 메일이 전송되지는 않았으며, 시간도 굉장히 짧았음
또한 995 포트는 일반적으로 POP3 프로토콜의 SSL 연결에 사용하므로 
SMTP 서버와의 통신은 일반적으로 포트 465를 사용해야 한다.

https://coding-s2-chaewon.tistory.com/195

 

[Game_Crew] 트러블슈팅 : 이메일 인증 완성

문제 jakarta.mail.MessagingException: Could not connect to SMTP host: smtp.naver.com, port: 587; 메일 서버 연결에 실패. SMTP 호스트 smtp.naver.com의 587에 연결할 수 없다는 내용이다. javax.net.ssl.SSLException: Unsupported or unre

coding-s2-chaewon.tistory.com