diff --git a/OAuth2-Front-Approach.md b/OAuth2-Front-Approach.md index 7813ccc..70b8b0f 100644 --- a/OAuth2-Front-Approach.md +++ b/OAuth2-Front-Approach.md @@ -16,14 +16,21 @@ A way for the `user` to tell `google` to give an access token to `xorismesiti.gr ### OAuth2 Frontend/Backend Flow Details: -1. Frontend **Redirect** the user to Google's OAuth authorization endpoint `accounts.google.com/o/oauth2` -2. User **Login in** to Google and grant permissions -3. Google **Redirect** the user back to `xorismesiti.gr/callback` including the authorization `code` -4. Frontend **Send** the authorization `code` to the Backend -5. Backend **Exchange** the authorization `code` for an `access_token` and `refresh token` -6. Backend **Send** `access_token` and `refresh token` to Frontend -7. Frontend **Store** `access_token` and `refresh token` to secure cookie -8. Frontend **Use** `access_token` to get user data from Google +1. Get Code + + 1. Frontend **Redirect** the user to Google's OAuth authorization endpoint `accounts.google.com/o/oauth2` + 2. User **Login in** to Google and grant permissions + 3. Google **Redirect** the user back to `xorismesiti.gr/callback` including the authorization `code` + +2. Exchange Code with Token + + 1. Frontend **Send** the authorization `code` to the Backend + 2. Backend **Exchange** the authorization `code` for an `access_token` and `refresh token` + 3. Backend **Send** `access_token` and `refresh token` to Frontend + +3. Use Token + + 1. Frontend **Use** `access_token` to get user data from Google