스프링 시큐리티를 사용해 API를 보호하는 방법에 대해 다룬 단원입니다.
Authorization Server
: 권한을 부여(인증에 사용할 아이템을 제공주는)해주는 서버
이렇게 두가지의 목적이 authorized code의 사용 목적이다.
scope란?
정확히 말하면 아니지만, scope는 작게 만든다면 서비스 안에 있는 세부 역할들을 말할 수도 있고, 크게 만든다면 서비스 자체의 접근 범위를 뒀다고 생각하여 scope=서비스다 라고 생각할 수도 있다.
나의 블로그 글 scope 정의 부분 참조하시라.
scope 왜 사용하냐면
client가 Resource Owner 대신에 사용할 기능들을 정의해야 하기 때문이다
JSON Web Token
정보를 비밀리에 전달하거나, 인증을 할 때 사용
JWT Token 은 access token 을 만들기 위해 사용된다. 물론 여기에서 이야기 하는 access token 이란 단순하게 우리가 분류하는 자원에 접근하는 access token 만을 이야기 하는 것이 아니라, 권한/인증에 대한 token 을 말한다. JWT Token 은 그 자체만으로도 권한과 인증의 역할을 가질 수 있다.
공식 홈페이지에 메인에서 테스트를 해보면 예시로 보여주고 있는 JWT Token 의 secret 키를 하나라도 입력을 하게 되면 JWT Token 에서 Signature 영역의 글자가 바로 바뀌는 것을 알 수 있다. 이처럼 JWT Token 은 변조가 되었을 때, 바로 알아차릴 수가 있다.
뿌이씨 오늘도 공부 열심히 하셨네요~ 항상 화이팅이에요~