> ## 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.

> Décrit comment effectuer la rotation des identifiants existants dans l’Auth0 Dashboard.

# Rotation des identifiants

Auth0 recommande d’effectuer régulièrement une rotation du matériel cryptographique afin de répondre à vos besoins de conformité et d’éviter que la sécurité soit compromise en cas de fuite de clés privées. Vous pouvez utiliser le <Tooltip tip="Auth0 Dashboard : principal produit d’Auth0 pour configurer vos services." cta="Voir le glossaire" href="/fr-CA/docs/glossary?term=Auth0+Dashboard">Auth0 Dashboard</Tooltip> ou <Tooltip tip="Auth0 Dashboard : principal produit d’Auth0 pour configurer vos services." cta="Voir le glossaire" href="/fr-CA/docs/glossary?term=Management+API">Management API</Tooltip> pour mettre de nouvelles clés en service. Vous devez créer un nouvel identifiant, l’associer à la méthode d’authentification `private_key_jwt`, puis supprimer les anciens identifiants ou ceux qui ne sont plus utilisés.

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  Une application peut stocker au maximum deux identifiants à la fois. Pour effectuer à répétition une rotation vers de nouveaux identifiants, vous devez supprimer les identifiants inutilisés.
</Callout>

<Tabs>
  <Tab title="Utiliser Auth0 Dashboard">
    Pour effectuer la rotation des identifiants de votre application dans Auth0 Dashboard :

    1. Accédez à [**Auth0 Dashboard > Applications > Application**](https://manage.auth0.com/#/applications), puis sélectionnez l’application à mettre à jour.
    2. Ouvrez l’onglet **Credentials**.
    3. Dans la section **Available Credentials**, sélectionnez **Add New Key**.
    4. Définissez un nom pour le nouvel identifiant, la clé publique au format PEM et l’algorithme à utiliser.
    5. Sélectionnez **Add Credential**.
    6. Pour activer le nouvel identifiant, ouvrez son menu et sélectionnez **Enable for Private Key JWT use**.
    7. Une fois vos applications mises à jour pour utiliser le nouvel identifiant, désactivez l’identifiant d’origine :

       1. Sélectionnez **Disable for Private Key JWT Use**.
       2. Une fois l’identifiant désactivé, retournez dans son menu et sélectionnez **Delete Credential**.
  </Tab>

  <Tab title="Utiliser Management API">
    Dans les exemples de rotation ci-dessous, `credential1` est un identifiant existant actuellement utilisé, et `credential2` est un nouvel identifiant qui le remplace.

    1. Générez une nouvelle paire de clés.

    2. Créez la ressource d’identifiant au moyen d’une requête `POST` à la Management API.

           <Callout icon="file-lines" color="#0EA5E9" iconType="regular">
             La limite de stockage actuelle par application est de deux identifiants simultanément. Pour effectuer plusieurs rotations de nouveaux identifiants, vous devez supprimer les identifiants inutilisés.
           </Callout>

    3. Effectuez une requête `PATCH` vers le point de terminaison [Update a Client](https://auth0.com/docs/api/management/v2#!/Clients/patch_clients_by_id) de la Management API pour associer l’identifiant à la méthode d’authentification `private_key_jwt` :

       ```bash lines theme={null}
       curl --location --request PATCH 'https://{domain}/api/v2/clients/{clientId} \
         --header 'Authorization: Bearer {managementApiAccessToken} \
         --header 'Content-Type: application/json' \
         --data-raw '{
                 "client_authentication_methods": {
                    "private_key_jwt": {
                       "credentials": [{ "id": {credentialId1} }, { "id": {credentialId2} }]
                    }
                 }
          }'
       ```

       | Paramètre                  | Description                                                                                                                                                            |
       | -------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
       | `clientId`                 | Application à mettre à jour.                                                                                                                                           |
       | `credentialId1`            | ID de l’identifiant existant actuellement utilisé.                                                                                                                     |
       | `credentialId2`            | ID du nouvel identifiant.                                                                                                                                              |
       | `managementApiAccessToken` | [Jeton d’accès pour la Management API](/fr-CA/docs/secure/tokens/access-tokens/management-api-access-tokens) avec les scopes `update:clients` et `update:credentials`. |

    4. Mettez à jour votre application pour utiliser la nouvelle clé privée afin de signer les assertions pour l’Auth0 Authentication API.

    5. Retirez la clé inutilisée de votre application.

       ```bash lines theme={null}
       curl --location --request PATCH 'https://{domain}/api/v2/clients/{clientId} \
         --header 'Authorization: Bearer $management_access_token' \
         --header 'Content-Type: application/json' \
         --data-raw '{
                 "client_authentication_methods": {
                    "private_key_jwt": {
                       "credentials": [{ "id": {credentialId2} }]
                    }
                 }
          }'
       ```

    6. Supprimez la clé inutilisée de votre application. Cela supprimera définitivement l’identifiant du stockage. Vous devez dissocier l’identifiant de votre application, sinon vous ne pourrez pas le supprimer.

       ```bash lines theme={null}
       curl --location --request DELETE 'https://{domain}/api/v2/clients/{clientId}/credentials/{credentialId}' \
         --header 'Authorization: Bearer {managementApiAccessToken}
       ```

       | Paramètre                  | Description                                                                                                                                       |
       | -------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
       | `clientId`                 | Application à mettre à jour.                                                                                                                      |
       | `credentialId`             | ID de l’ancien identifiant à supprimer.                                                                                                           |
       | `managementApiAccessToken` | [Jeton d’accès pour la Management API](/fr-CA/docs/secure/tokens/access-tokens/management-api-access-tokens) avec le scope ` delete:credentials`. |
  </Tab>
</Tabs>

<div id="active-credentials">
  ### Identifiants actifs
</div>

Pour éviter toute interruption de service, vous pouvez laisser plusieurs identifiants actifs pendant la rotation. Les applications peuvent continuer de fonctionner normalement avec d’anciennes clés jusqu’à ce qu’elles soient mises à jour. Les applications peuvent envoyer des assertions signées avec n’importe quel ensemble d’identifiants actifs.

Auth0 recommande de réduire au minimum la période pendant laquelle plusieurs identifiants sont utilisés. L’exemple ci-dessous utilise plusieurs identifiants associés :

```bash lines theme={null}
curl --location --request PATCH 'https://$tenant/api/v2/clients/$client_id' \
  --header 'Authorization: Bearer $management_access_token' \
  --header 'Content-Type: application/json' \
  --data-raw '{
          "client_authentication_methods": {
             "private_key_jwt": {
                "credentials": [{ "id": $credential1.id }, { "id": $credential2.id }]
             }
          }
 }'
```

<div id="learn-more">
  ## En savoir plus
</div>

* [Configurer l’authentification par Private Key JWT](/fr-CA/docs/get-started/applications/configure-private-key-jwt)
* [Identifiants de l’application](/fr-CA/docs/secure/application-credentials)
* [Paramètres des identifiants](/fr-CA/docs/get-started/applications/credentials)
