jargons.dev
jargons.dev copied to clipboard
Auth Feature - Fourth Iteration
The third iteration of the auth feature should focus on enhancing the OAuth flow and adding a signout/disconnect feature.
This is a follow up to the initial iterations...
- First Iteration - https://github.com/babblebey/jargons.dev/pull/8
- Second Iteration - https://github.com/babblebey/jargons.dev/pull/28
- OAuth App type refactoring - https://github.com/babblebey/jargons.dev/pull/33
Tasks
-
Store OAuth Flow State Object in Cookies: Implement the todo that suggests storing the OAuth flow state object to cookies. This stored state should be compared with the
state
param returned from the GitHub OAuth flow in thegithub/oauth/callback
handler to prevent CSRF attacks. -
Implement Signout/Disconnect Feature: Create a helper function that can be exported from the
doAuth
action to handles signout/disconnect functionality. This function should:- Clear the token data saved in the cookie for
jargons.dev:token
. - Redirect the user to the homepage of the web app.
- Clear the token data saved in the cookie for
Related Files
-
github/oauth/callback.js
-
lib/actions/do-auth.js
Acceptance Criteria
- OAuth flow state object is stored in cookies and compared with the
state
param. - Signout/disconnect feature is implemented and accessible through the
doAuth
action
Additional Notes
- Nothing much... just ask a question or share ideas, if you've got any 😉