이 포스팅은 저번 포스팅과 이어져 있습니다.
저번 포스팅에서 만들었던 MyFilter1에 다음과 같이 filter를 설정해 줬다 요청이 POST로 들어오면 동작을 하도록 해 주고 포스트맨으로 POST 요청을 해보자
그럼 이제 하나의 가정을 해보자
우리가 "cos"라는 토큰을 만들었다고 가정을하고
이 cos라는 토큰이 넘어오면 인증이 되도록하고 그게 아니면 더 이상 filter를 못 타게 해서 컨트롤러로 진입을 할 수 없도록 만들어 볼 것이다.
위와 같이 잘 동작하는 것을 볼 수 있다.
dochain을 타지 못하면 프로세스가 종료되기 때문에 cos라는 토큰이 없으면 프로세스가 종료된다.
그럼 이 filter를 Security가 동작하기 전에 걸어야 가장 먼저 인증을 해낼 수가 있다.
위와 같이 SecurityConfig에 설정을 걸어줘서 cos토큰이 없으면 다른 필터를 타지 않고 프로세스가 종료돼서 접근할 수 없도록 설정을 해줬다
그럼 우리가 해야 할 것은
cos라는 임의의 토큰이 아닌
id, pw가 정상적으로 들어와서 로그인이 완료되면 토큰을 만들어주고 그걸 응답을 해준다.
요청할 때마다 header에 Authorization에 value값으로 토큰을 가지고 오면
그때 이 토큰이 넘어오면 이토 큰이 내가 만든 토큰이 맞는지 검증만 하면 된다. (RSA, HS256)
https://github.com/fj2008/JWTstudy
'SpringbootSecurity' 카테고리의 다른 글
SpringbootSecurity/JWT 사용한 로그인(2) (0) | 2021.10.01 |
---|---|
SpringbootSecurity/JWT 사용한 로그인(1) (0) | 2021.10.01 |
SpringbootSecurity/JWT Filter 등록 테스트 (0) | 2021.09.28 |
SpringbootSecurity/JWT Bearer 인증방식 (0) | 2021.09.23 |
SpringbootSecurity/JWT를 위한 Security설정 (0) | 2021.09.07 |