OAuth
1. What is OAuth?
Unlike traditional servers that handle authentication directly, OAuth is a mechanism that mediates authentication
A protocol that simplifies the process of providing clients with permissions to access secured resources
In other words, web services that already have user information can handle user authentication on your behalf, issue tokens for access permissions, and use them for authentication on your server
2. OAuth Operation Mechanism
Resource Owner
The user who wants to perform social login through OAuth authentication
Resource Server
The server that stores user information
Authorization Server
Among servers that store user information, the server responsible for authentication
Application
The environment where users want to use social login
3. Types and Flow of OAuth Authentication Methods
Implicit Grant Type
If already logged into an existing service, immediately provides access token to new service, making it less secure
Authorization Code Grant Type
More secure than Implicit Grant Type because it has an additional authentication step using Authorization Code
Also, tokens can be managed only on the server without exposing them to the Application's Client, increasing options for implementing social login
Refresh Token Grant Type
If access tokens expire, having to go through this process every time to reissue access tokens is not good for user convenience β issue refresh tokens as well
4. OAuth Advantages
Easy and safe to use new services
Can set permission scopes
Last updated