Contributor
Hemanth Krishna

[Litmus Portal] Authentication Module Refactor and OAuth Implementation


Mentors
Raj Babu Das
Organization
CNCF

The Authentication server of the litmus portal (which resides in the litmus-portal folder of the main litmus repository) is written in golang, uses certain outdated dependencies (such as mgo), and currently does not support third-party OAuth authentication modules such as:

  • Google Authentication
  • GitHub Authentication
  • Local Authentication

The current implementation of the authentication server also consumes more resources than the litmus portal’s GraphQL server.

This proposal shall focus on re-writing the Authentication Module of the litmus-portal so that it achieves the following:

  • The Authentication Module is Independent (Can be moved to a separate repository)
  • The Module is light-weight and makes use of actively maintained dependencies (if any)
  • The Authentication Server is robust and flexible to any future addition of features
  • The Authentication Server supports OAuth authentication such as Google Auth and GitHub Auth