Sommaire

Authentification basée sur OAuth2

1. À propos du protocole OAuth2 Protocole OAuth2

Le protocole OAuth2 est un protocole qui permet de gérer les accès à un site web en s’appuyant sur un mécanisme existant (Facebook, Google, GitHub, Gitlab, etc.).

Pour plus de détails, vous pouvez consulter l’article suivant sur Wikipédia : https://fr.wikipedia.org/wiki/OAuth

2. Principe de la solution

L’authentification de l’utilisateur va se faire auprès d’un service dédié à l’aide d’un proxy. Ce dernier se chargera d’authentifier l’utilisateur et de le renvoyer vers MailHog.

Le mécanisme de proxy s’appuiera sur l’outil oauth2-proxy disponible sous la forme de chart Helm.

images/15EP04.png

Schéma de principe utilisant le service d’authentification de GitHub comme autorité OAuth2

GitHub servira de tiers d’authentification, mais l’exercice est transposable à d’autres tiers externes comme par exemple Google, Facebook, Twitter, etc. ou internes (ex. : Keycloak, OpenAM, Azure Active Directory, etc.).

3. Création d’un identifiant GitHub

Pour la suite de l’exercice, l’utilisateur devra disposer d’un identifiant sur GitHub. 

La première opération va être de créer une nouvelle application GitHub. Pour cela, entrez l’adresse suivante dans un navigateur : https://github.com/settings/applications/new

L’écran va demander les éléments ...