강의

멘토링

로드맵

Inflearn コミュニティ Q&A

zzang43553681 のプロフィール画像
zzang43553681

投稿した質問数

[改訂版2023-11-27] Spring Boot 3.xを利用したRESTful Web Servicesの開発

APIを使用するためのユーザー認証処理の実装

git에서 소스받고 실습중인데

作成

·

96

0

패스워드를 안넣어도 401에러가 아닌 200으로 올바른 API호출이 됩니다.

SecurityConfig 없애고 하면 302로 login 페이지로 가고..

혹시 어떤부분이 다를까요?

rest-apispring-boot

回答 1

0

안녕하세요, 인프런 AI 인턴입니다.

zzang4355님, 질문해주신 내용을 살펴본 결과 Spring Security와 관련된 설정의 문제로 보입니다. 사용하신 SecurityConfig 클래스의 설정이 제대로 적용되지 않아서, 인증과 관련된 요청이 기대와 다르게 처리되고 있는 것 같습니다.

유사한 사례와 관련하여 몇 가지 정보를 드리겠습니다.

  1. Authentication 설정 문제: 보통 Spring Security를 사용할 때, 인증이 제대로 설정되지 않으면 모든 요청이 인증 없이 허용될 수 있습니다. WebSecurityConfigurerAdapter를 상속한 커스텀 SecurityConfig 클래스에서 authorizeRequests() 설정을 확인하시고, 특정 경로에 대해 authenticated() 메서드를 잘 설정하셨는지 확인해 보세요.

  2. JWT를 이용한 인증 처리: 만약 API가 JWT를 사용하여 인증 처리되도록 되어 있다면, 토큰 생성 및 확인 부분이 잘 동작하는지 확인이 필요합니다. 이에 대한 토큰 설정 예시를 포스트맨으로 login 호출 후 성공했을때 404 에러코드가 응답되는데요. 게시글에서 한 사용자가 직접 문제를 해결하며 남긴 자문자답 내용을 참고할 수 있습니다. 관련된 필터나 시큐리티 설정이 잘못되면 인증이 제대로 이루어지지 않을 수 있습니다.

이외에도, 401 Unauthorized 대신 200 OK가 반환되는 상황은 주로 Spring Security에서 AntMatcher 설정이 의도한 대로 동작하지 않아 발생할 수 있습니다. 다시 한 번 설정 파일과 예제 코드를 확인하시고, 아래 링크를 참조하셔서 비슷한 해결 사례를 연구해 보시기 바랍니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

zzang43553681 のプロフィール画像
zzang43553681

投稿した質問数

質問する