Impossible de réinitialiser un mot de passe d'utilisateur

Hello tout le monde !
Je suis en train d’implémenter un système de connexion, avec Directus.
Tout fonctionne très bien, connexion, refreshToken et déconnexion (et gestion du type d’utilisateur), mais par contre impossible d’envoyer un lien de réinitialisation de mot de passe.
Y a t’il des manipulations à effectuer sur le serveur pour que Directus puisse envoyer un mail ? (j’ai pris un serveur sur hetzner et suivi pas à pas ton cours sur Directus pour le configurer).
La réinitialisation ne fonctionne pas sur le panel d’administration de Directus.
En espérant que quelqu’un pourra m’aider :).

@Lugdu
Je vois que la doc de Directus indique qu’il est nécessaire de configurer les variable d’environnement pour que cette fonctionnalité soit active :

Note: You need to configure the PASSWORD_RESET_URL_ALLOW_LIST environment variable to enable this feature.

Je ne l’ai pas encore fait mais normalement il y a les explication ici :

[email protected]:~/my_app_project$ ll
total 488
drwxrwxr-x   5 directus directus   4096 Nov 10 11:26 ./
drwxr-xr-x  10 directus directus   4096 Nov  3 16:40 ../
-rw-r-----   1 directus directus  10452 Oct 23 10:27 .env
drwxrwxr-x  10 directus directus   4096 Oct 23 10:25 extensions/
drwxrwxr-x 689 directus directus  32768 Nov 10 11:05 node_modules/
-rw-rw-r--   1 directus directus    333 Nov 10 11:04 package.json
-rw-rw-r--   1 directus directus 426842 Nov 10 11:05 package-lock.json
drwxrwxr-x   2 directus directus   4096 Nov  3 16:40 uploads/

Je pense qu’il faut modifier le
-rw-r----- 1 directus directus 10452 Oct 23 10:27 .env

Si quelqu’un (par exemple @mbritto :joy: :joy:)sait comment faire par contre ca serait cool :pray: :pray:

Merci @Xababa_Dalabama pour ta réponse, mais leur documentation n’est pas très clair, concernant les variables d’environnement (en tout cas pas très clair pour moi, pourtant j’ai plutôt l’habitude de lire des documentations).

@Lugdu
Je tente l’opération sans savoir trop où je vais mais je partage si ca peut t’aider :

  1. J’ai ouvert le terminal et j’ai accéder à mon serveur :
ssh [email protected]<monip>

Ensuite je suis aller dans le dossier de mon serveur directus :

cd /home/directus/mon_projet_app

Ensuite j’ai ouvert le fichier .env avec nano

nano .env

Et là ca m’a ouvert le fichier .env :

Je pense qu’il doit falloir rajouter quelque part par là le

PASSWORD_RESET_URL_ALLOW_LIST

image

Par contre ce que je ne sais pas c’est s’il faut avoir créer une page web dédiée de son côté avec toutes les options ou si directus fourni quelque chose… Si quelqu’un sait, ca serait cool de compléter :stuck_out_tongue:

Deux articles sur le sujet qui me font penser que ce n’est pas si simple que ca :

J’ai mis en place la réinitialisation de mot de passe avec Directus, j’ai choisis l’API Mailgun plutôt que de configurer mon serveur unix et sendmail.
La tâche reste complexe mais elle est faisable :

  1. Configurer un compte Mailgun
  2. Configurer les paramètres directus EMAIL_TRANSPORT, EMAIL_MAILGUN_DOMAIN et EMAIL_MAILGUN_API_KEY pour envoyer les emails avec ce fournisseur

Ensuite il faut respecter le reste de la procédure pour la réinitialisation des mots de passe :

  1. Configurer une URL où envoyer l’utilisateur pour choisir un nouveau mot de passe (PASSWORD_RESET_URL_ALLOW_LIST dans .env)
  2. Lancer la procédure via cette API : Start reset password request
  3. Finaliser la procédure depuis la page web en envoyant le nouveau mot de passe : Reset password

Pour les 2 dernières étapes j’utilise ma lib directus en Dart qui contient les 2 fonctions toutes prêtes, mais le reste doit être fait dans chaque projet.

2 « J'aime »