Oauth2.0 ?
웹, 앱에서 흔히 찾아볼 수 있는 '소셜 로그인' 방식
전통적인 방법은 직접 작성한 서버에서 인증을 처리, OAuth는 인증을 중개
(ex : 구글, 깃헙등이 사용자의 인증을 대신해주고 접근권한에 대한 토큰을 발급, 서버 인증을 가능하게 한다.)
정보와 리소스를 안전하고 신뢰된 방식으로 공유할 수 있게 해주는 프로토콜
Autehntication과 Authorization의 차이 ?
- Authentication은 로그인하는 절차를 의미(사용 인증에 사용되는 암호, 패스워드)
- Authorization은 로그인 후 유저를 구분하는 절차(접근 및 권한 인증에 사용되는 암호, 인증번호)
- 프로세스 :
- app(service)가 user에게 인증 요청
- user가 app에 인증정보 입력 (id/pwd)
- app은 인증서버에 인증 정보 전달
- 인증 서버는 인증 토큰(access token) 부여
- token은 랜덤 문자열, 접근의 유효성 확인
- app은 리소스 서버에 토큰 전달
- 리소스 서버는 보호된 리소스를 app에 전달