# Flux de connexion personnalisé : AWS Cognito SSO (via connexion sans mot de passe) - Est-ce possible ?

**URL:** https://meta.discourse.org/t/custom-login-flow-aws-cognito-sso-via-passwordless-signin-is-this-possible/203406
**Category:** SSO
**Created:** [Septembre 13, 2021, 2:56 UTC](https://meta.discourse.org/t/custom-login-flow-aws-cognito-sso-via-passwordless-signin-is-this-possible/203406 "2021-09-13T14:56:36Z")
**Posts on this page:** 4
**Page:** 1

<div class="post-metadata">

### Author: ![xprmnts](https://avatars.discourse-cdn.com/v4/letter/x/4af34b/32.png) [@xprmnts](https://meta.discourse.org/u/xprmnts)
#### Post date: [Septembre 13, 2021, 2:56 UTC](https://meta.discourse.org/t/custom-login-flow-aws-cognito-sso-via-passwordless-signin-is-this-possible/203406/1 "2021-09-13T14:56:36Z")

</div>

J’ai pu activer l’authentification unique (SSO) via AWS Cognito en suivant les étapes ci-dessous :

1. [Discourse OpenID Connect (OIDC)](https://meta.discourse.org/t/openid-connect-authentication-plugin/103632)
2. [Anyone have a working AWS Cognito configuration w/ ouath2, openid or sso?](https://meta.discourse.org/t/anyone-have-a-working-aws-cognito-configuration-w-ouath2-openid-or-sso/123579)

Cependant, je cherche à mettre en place dans Discourse le même flux d’authentification que celui utilisé pour nos applications mobile et web, à savoir un flux d’authentification personnalisé sans mot de passe (les utilisateurs saisissent leur adresse e-mail et reçoivent un code de vérification).

L’objectif est que le SSO fonctionne via ce flux d’authentification sans mot de passe, plutôt que par e-mail/mot de passe, puisque les utilisateurs n’utilisent pas de mots de passe dans nos applications principales.

Auriez-vous des pistes pour activer cette fonctionnalité ? Ou bien savez-vous si cela est possible ?

Merci.

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [Septembre 13, 2021, 3:16 UTC](https://meta.discourse.org/t/custom-login-flow-aws-cognito-sso-via-passwordless-signin-is-this-possible/203406/2 "2021-09-13T15:16:43Z")

</div>

À moins que je n’oublie quelque chose, cela devrait fonctionner. Demandez-leur simplement de se rendre à l’endroit où le lien est envoyé, et vous devriez être connecté à Discourse. Est-ce que cela ne fonctionne pas ? Ou souhaitez-vous que Discourse les redirige vers l’endroit où ils peuvent demander le lien ?

---

<div class="post-metadata">

### Author: ![xprmnts](https://avatars.discourse-cdn.com/v4/letter/x/4af34b/32.png) [@xprmnts](https://meta.discourse.org/u/xprmnts)
#### Post date: [Septembre 13, 2021, 6:07 UTC](https://meta.discourse.org/t/custom-login-flow-aws-cognito-sso-via-passwordless-signin-is-this-possible/203406/3 "2021-09-13T18:07:36Z")

</div>

Bonjour Jay,

Merci pour ta réponse.

Pour clarifier les choses :

Le flux de notre application (et non de Discourse) est sans mot de passe : l’utilisateur saisit son adresse e-mail → reçoit un code à 6 chiffres par e-mail → saisit le code → se connecte.

Pour activer cela, nous utilisons des déclencheurs Lambda qui définissent/créent et vérifient les défis d’authentification. De plus, l’interface utilisateur est personnalisée (c’est-à-dire qu’elle n’est pas fournie par AWS Amplify).

 ![image](https://global.discourse-cdn.com/meta/original/3X/9/9/9986473d2d90b745b124a841f93b1731324c880c.png)

Ce que nous souhaitons, c’est que le processus de connexion de Discourse soit identique. J’ai essayé d’utiliser la même configuration de client d’application Cognito pour Discourse, mais j’obtiens cette page d’erreur :

 ![image](https://global.discourse-cdn.com/meta/original/3X/2/f/2f74b4c247035788280c1f95dcdfda96437ba91c.png)  
(l’appel réseau n’est pas très utile de la part de Cognito concernant cette erreur)

---

<div class="post-metadata">

### Author: ![xprmnts](https://avatars.discourse-cdn.com/v4/letter/x/4af34b/32.png) [@xprmnts](https://meta.discourse.org/u/xprmnts)
#### Post date: [Octobre 28, 2021, 2:09 UTC](https://meta.discourse.org/t/custom-login-flow-aws-cognito-sso-via-passwordless-signin-is-this-possible/203406/4 "2021-10-28T14:09:09Z")

</div>

En complément de ce qui précède, si cela intéresse quelqu’un :

Nous avons essentiellement dû mettre en place un serveur OAuth intermédiaire pour gérer les jetons, en nous inspirant de ce post :  
[https://medium.com/@scott\_84836/adding-aws-cognito-authentication-to-discourse-using-oauth2-basic-f20209ba6162](https://medium.com/@scott_84836/adding-aws-cognito-authentication-to-discourse-using-oauth2-basic-f20209ba6162)

Notre backend étant basé sur Flask/Python, nous avons fini par utiliser : [python-oauth2 · PyPI](https://pypi.org/project/python-oauth2/)

TL;DR : il n’est pas possible de configurer une authentification sans mot de passe avec Cognito via les méthodes par défaut ; nous avons dû mettre en place notre propre OAuth léger.
