Mettre en place un espace en ligne sécurisé par code OTP

- 14/08/2023 - 2 heures 19 minutes - Patrick Prémartin

Après avoir mis en place un espace sécurisé par un lien magique (password less donc) il était logique d'enchaîner avec le code à usage unique (OTP - one time password) envoyé par email.

Dans ce projet nous avons donc la même chose que sur le précédent : un écran permettant de saisir une adresse de courrier électronique pour accéder à des pages protégées.

La différence c'est que cette fois-ci nous envoyons un code par email au lieu d'envoyer une URL.

Les données temporaires sont stockées dans un fichier du serveur plutôt qu'en base de données. Seuls les utilisateurs dont l'adresse email a fait l'objet d'un accès réussi sont stockés en base de données et se voient attribuer un ID d'utilisateur pouvant servir à autre chose dans le site.

Après avoir codé et testé le fonctionnement purement web, nous avons commencé l'ajout d'une API permettant à autre chose que le site d'utiliser le système d'inscription OTP depuis l'extérieur.

Ca a été l'occasion de discuter de ma vision de la sécurisation d'accès sur une API avec ce qu'il faut pour virer des utilisateurs, appareils ou applications. Vision qui peut s'approcher de OAuth ou OAuth2 selon jusqu'où on va dans le concept.

Bien entendu les programmes du site et les API utilisent le même code pour la partie envoi et la partie vérification du code. La duplication de code dans ce cas serait un non sens (déjà qu'en temps normal c'est à éviter).

Les tests du premier point d'entrée de l'API ont été réalisés à l'aide de REST Debugger (fourni avec Delphi mais aussi disponible gratuitement au téléchargement). Pourquoi lui plutôt que Postman ou un autre ? Simplement pour sa simplicité et son bouton "export components". A voir en action dans la session suivante.

Nous avons terminé la session de codage sur la validation du endpoint d'envoi de code.

Certaines informations n'ont pas été affichées. Vous devez vous connecter pour y accéder.

Connexion Inscription


Liens associés

Ces liens s'ouvrent dans la même fenêtre que cette page. En cliquant dessus vous quitterez Serial Streameur.
Pensez à les ouvrir dans un nouvel onglet si vous préférez rester ici pour y revenir plus facilement.


Mots-clés associés

API, HTML, JavaScript, PHP


Classement

Projets > Sites web > Espaces membres > Espaces membres accessibles par un code à usage unique (OTP)