OAuth가 나오게 된 배경
- 내 서비스를 이용해서, Google이나 Facebook같은 곳의 서비스에 접근할 수 있는 수단이 있으면 얼마나 좋을까?
- ? 괜찮은데? 해보자! 와 같은 과정으로 탄생
위 생각의 단점
- 가장 단순한 방법은 우리 서비스에서 제3의 서비스에 접근할 수 있도록
제 3 서비스의 아이디와 패스워드를 우리 서비스에서 관리하는 방식임
- 하지만, 구글과 같은 대형 서비스의 아이디와 패스워드를 우리같은 작은 서비스에서 관리한다는 것은 너무 큰 부담;
- 또한, 해킹을 생각하면, 기껏 대형 서비스에서 돈 겁나써서 보안 빡세게 해놨는데, 우리 서비스에서 해커가 털어가면 보안에 쓴 돈이 날라가는 것과 다름없음
해결법
- 그럼 아이디랑 패스워드는 유저랑 제3서비스에서 알아서 로그인 하게 하고, 우리는 제 3서비스에서 로그인 성공하면 권한만 받아오자!
결론
- 로그인은 유저와 제 3서비스가, 권한은 우리와 제 3서비스가 진행한다.
OAuth로 변경되는점
accessToken이 생성됨
- 일단 ID와 패스워드를 관리할 필요가 없음
- 제3 서비스가 가지고있는 모든 기능이 아니라, 필요한 기능만 획득가능
- 제3 서비스에 대해서 접근 가능한 accessToken이라는 것이 얻어지는 것이 가장 중요 포인트