> ## Documentation Index
> Fetch the complete documentation index at: https://translations.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Post Change Password

> Découvrez les Actions Post Change Password, qui s’exécutent après qu’un utilisateur d’une connexion à une base de données réinitialise ou modifie son mot de passe. Elles permettent d’aviser un autre système que le mot de passe de l’utilisateur a été modifié.

Le déclencheur `post-change-password` s’exécute après qu’un utilisateur d’une connexion à une base de données réinitialise ou modifie son mot de passe. Utilisez ce déclencheur pour envoyer un courriel à l’utilisateur après un changement de mot de passe ou pour aviser un autre système que le mot de passe de l’utilisateur a été modifié, afin de révoquer les autres sessions non gérées par Auth0. Plusieurs Actions peuvent être associées à ce déclencheur et s’exécutent dans l’ordre.

<Frame>
  <img src="https://mintcdn.com/translations/3nS3prIggmJG9TUI/docs/images/cdy7uua7fh8z/3i65TvmTpHkyDTqKvXAkMi/3adb8f0bd195cec4dd0a82cb87b270b9/post-change-password-flow.png?fit=max&auto=format&n=3nS3prIggmJG9TUI&q=85&s=78f68f243084bb68c75ed7ddc4821250" alt="Diagramme illustrant le flux Post Change Password des Actions." width="761" height="126" data-path="docs/images/cdy7uua7fh8z/3i65TvmTpHkyDTqKvXAkMi/3adb8f0bd195cec4dd0a82cb87b270b9/post-change-password-flow.png" />
</Frame>

Les Actions de ce flux sont non bloquantes (asynchrones) : le pipeline Auth0 continue de s’exécuter sans attendre la fin de l’Action; le résultat de celle-ci n’a donc aucune incidence sur la transaction Auth0.

<div id="references">
  ## Références
</div>

* [Objet Event](/docs/fr-ca/customize/actions/reference/post-change-password/post-change-password-event-object) : fournit des informations contextuelles sur l’utilisateur et la connexion associée au changement de mot de passe.
* [Objet API](/docs/fr-ca/customize/actions/reference/post-change-password/post-change-password-api-object) : fournit des méthodes permettant de modifier le comportement du flux.

<div id="common-use-cases">
  ## Cas d’utilisation courants
</div>

<div id="invalidate-the-users-session-in-another-system">
  ### Invalider la session de l’utilisateur dans un autre système
</div>

Vous pouvez utiliser une Action post-change-password pour invalider la session de l’utilisateur dans un autre système :

```javascript lines theme={null}
const axios = require("axios");

/**
 * @param {Event} event - Renseignements sur l’utilisateur dont le mot de passe a été modifié.
 */
exports.onExecutePostChangePassword = async (event) => {
  axios.post("https://my-api.exampleco.com/revoke-session", { params: { email: event.user.email }});
};
```

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  Pour utiliser une bibliothèque `npm` comme `axios`, vous devez l’ajouter comme dépendance à l’Action. Pour en savoir plus, consultez la section « Ajouter une dépendance » dans [Write Your First Action](/docs/fr-ca/customize/actions/write-your-first-action).
</Callout>

<div id="send-an-email-after-the-user-changes-their-password">
  ### Envoyer un courriel après la modification du mot de passe de l’utilisateur
</div>

Une Action post-change-password peut servir à aviser l’utilisateur par courriel que son mot de passe a été modifié :

```javascript lines expandable theme={null}
const axios = require("axios");

/**
 * @param {Event} event - Détails sur l’utilisateur dont le mot de passe a été modifié.
 */
exports.onExecutePostChangePassword = async (event) => {
  try {
    // https://sendgrid.api-docs.io/v3.0/mail-send
    axios.post('https://api.sendgrid.com/v3/mail/send',
      {
        personalizations: [{
          to: [{ email: event.user.email }]
        }],
        from: { email: 'admin@exampleco.com' },
        subject: 'Your password was changed',
        content: [{
          type: 'text/plain',
          value: 'The password for your ' + event.connection.name + ' account ' + event.user.email + ' was recently changed.'
        }]
      },
      {
        headers: {
          'Authorization': 'Bearer ' + event.secrets.SENDGRID_API_KEY
        },
      }
    );
  } catch (err) {
    console.log(`Error sending email to ${event.user.email}:`, err.message)
  }
};
```

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  Pour que cette Action s’exécute correctement, elle doit contenir un Secret nommé `SENDGRID_API_KEY` et dépendre du package `axios` de `npm`.
</Callout>
