inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

스프링부트 시큐리티 & JWT 강의

스프링부트 시큐리티 4강 - 시큐리티 로그인

안녕하세요 강사님 로그인 질문있씁니다!

488

진짜 잘하고싶다

작성한 질문수 30

0

public class LoginFilter extends UsernamePasswordAuthenticationFilter

이 작업을 통해서 login으로 들어오는 것을

@Override
public Authentication attemptAuthentication(HttpServletRequest request, HttpServletResponse response) throws AuthenticationException {
    try {
        User user = objectMapper.readValue(request.getInputStream(), User.class);

        UsernamePasswordAuthenticationToken authenticationToken =
                new UsernamePasswordAuthenticationToken(user.getUsername(), user.getPassword());

        return authenticationManager.authenticate(authenticationToken);
    } catch (IOException e) {
        log.error("{}", e);
    }
    return super.attemptAuthentication(request, response);
}

이 작업을 통해서 로그인 하는 걸로 알고있는데,

이러한 경우에 컨트롤러 테스트 코드를 어떻게 작성할 수 있는 건지 궁금합니다.

 

api가 아니라 자꾸 에러가 발생하는데

혹시 이러한 경우에 api 테스트 코드 작성 팁좀 가르쳐주실 수 있나요?

 

 

이러한 예외가 발생합니다.

이유를 모르겠습니다. Postman으로 할 때는 잘 동작합니다 ㅜㅜ

그냥 /api/login 이라는 api를 생성해서 테스트해야 될까요?

spring spring-security jwt

답변 2

0

최주호

https://github.com/codingspecialist/junit-bank-class/blob/main/src/main/java/shop/mtcoding/bank/config/jwt/JwtAuthenticationFilter.java

0

진짜 잘하고싶다

정말 감사합니다 강사님

0

최주호

이거 테스트 하려면, 전체적인 개념 정리가 되어있어야 합니다.!!

설명할 부분이 너무 많습니다.

부분 적으로 찝어서 질문을 해주시면, 그 부분에 대한 답변을 해드리고,

그게 아니라면, Junit 강의를 한번 보는 것을 추천드려요.

0

진짜 잘하고싶다

이게 api를 호출하는 것이 아닌

시큐리티 내부에 구현되어있는 그런 환경에서 로그인 되는 거 같은데

스프링 이전에 필터에서 로그인 진행하는 것이기 때문에 (attemptAuthentication 메서드로)

api테스트가 불가능한 부분이라고 생각해서 여쭤봤습니다.

제가 생각했을 때 /login은 api가 아니기 때문에 SpringBootTest가 불가능하다고 생각하는데

틀린 부분 지적 부탁드립니다!

 

0

최주호

API 테스트 가능합니다!! 필터도 테스트할 수 있어요!!

0

진짜 잘하고싶다

도저히 감을 못잡겠는데 혹시 강사님 깃헙에 예제같은게 있을까요?

JWT를 구현한 다음 이 API를 호출해서 사용하는 것은 프론트엔드 쪽에서 하는 역할인가요?

0

98

1

Jwt쓰면 스프링시큐리티는 필수적으로 사용해야하나요?

0

401

1

13:23 system.out 출력문이 다르게 나옵니다.

0

130

1

수료증 문의

0

228

2

9분대에 질문이 있습니다 !

0

115

1

password 비교를 하지 않았는데 어떻게 인증이 통과된 건가요?

0

321

1

이전 강의 참고하라는 말씀

0

253

1

강의 실습하다가 막히는 분들 참고(2024년8월 기준)

2

1116

2

구글 소셜 로그인 302

0

201

1

오류 문의 _ org.springframework.orm.jpa.JpaSystemException: could not deserialize

1

585

1

[자바] 시큐리티 Config 참고

13

953

1

이론강의

0

280

1

SpringSecurity JWT 로그인 URL 2개 설정하는 방법

0

488

1

2024.06기준) 최근 SecurityConfig 설정 문의

0

922

3

구글 로그인시 authentication이 null 값이라고 에러가 발생합니다.

0

678

2

특정 url필터 거는 방법 이슈

0

422

1

강사님께서 말씀하시는 시큐리티세션이 SecurityContext인가요?

0

279

1

25강 마지막 테스트에서 오류

1

1044

2

jwt를 저장하는 위치에 궁금한 점이 있습니다.

0

298

1

mustache를 사용하지 않고 thymeleaf를 사용하려고 하는데

0

697

1

세션 인증방식이 REST 원칙에 위배되는 건가요?

0

342

1

jwt와 실제데이터의 관계

1

246

1

jwt 와 세션ID의 관계

1

313

1

SecurityConfig에서 세션 설정, 인가 설정

0

422

1