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

> Effectuez la rotation des informations d’identification Private Key JWT de votre application sans interruption de service en maintenant deux clés actives pendant la période de transition.

# Rotation des informations d’identification

Auth0 recommande d’effectuer régulièrement la rotation du matériel de clé afin de répondre à vos exigences de conformité et de s’assurer que la sécurité n’est pas compromise par des clés privées divulguées. Vous pouvez utiliser le <Tooltip tip="Auth0 Dashboard : le principal produit d’Auth0 pour configurer vos services." cta="Voir le glossaire" href="/docs/fr-ca/glossary?term=Auth0+Dashboard">Auth0 Dashboard</Tooltip> ou l’<Tooltip tip="Auth0 Dashboard : le principal produit d’Auth0 pour configurer vos services." cta="Voir le glossaire" href="/docs/fr-ca/glossary?term=Management+API">Management API</Tooltip> pour mettre en service de nouvelles clés. Vous devez créer une nouvelle information d’identification, l’associer à la méthode d’authentification `private_key_jwt`, puis supprimer les informations d’identification anciennes ou inutilisées.

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  La limite de stockage actuelle de l’application est de deux informations d’identification à la fois. Pour effectuer plusieurs rotations de nouvelles informations d’identification, vous devez supprimer les informations d’identification inutilisées.
</Callout>

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

    1. Accédez à [**Auth0 Dashboard > Applications > Application**](https://manage.auth0.com/#/applications) et sélectionnez l’application que vous souhaitez mettre à jour.
    2. Ouvrez l’onglet **Credentials**.
    3. Dans la section **Available Credentials**, sélectionnez **Add New Key**.
    4. Saisissez un nom pour votre nouvelle information d’identification, la clé publique au format PEM et l’algorithme de cette nouvelle information d’identification.
    5. Sélectionnez **Add Credential**.
    6. Pour activer votre nouvelle information d’identification, ouvrez le menu correspondant et choisissez **Enable for Private Key JWT use**.
    7. Une fois vos applications mises à jour pour utiliser la nouvelle information d’identification, désactivez l’ancienne :

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

  <Tab title="Utiliser Management API">
    Dans les exemples de rotation ci-dessous, `credential1` est une information d’identification existante actuellement utilisée, et `credential2` est une nouvelle information d’identification qui la remplacera.

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

    2. Créez la ressource d’information d’identification avec une requête `POST` à la Management API.

           <Callout icon="file-lines" color="#0EA5E9" iconType="regular">
             La limite actuelle de stockage par application est de deux informations d’identification à la fois. Pour effectuer régulièrement la rotation vers de nouvelles informations d’identification, vous devez supprimer celles qui ne sont pas utilisées.
           </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 afin d’associer l’information d’identification à 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 que vous souhaitez mettre à jour.                                                                                                                          |
       | `credentialId1`            | ID de l’information d’identification existante actuellement utilisée.                                                                                                  |
       | `credentialId2`            | ID de la nouvelle information d’identification.                                                                                                                        |
       | `managementApiAccessToken` | [Jeton d’accès pour la Management API](/docs/fr-ca/secure/tokens/access-tokens/management-api-access-tokens) avec les scopes `update:clients` et `update:credentials`. |

    4. Mettez à jour votre application afin d’utiliser la nouvelle clé privée pour signer les assertions destinées à 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’information d’identification du stockage. Vous devez d’abord dissocier l’information d’identification de votre application, sinon vous ne pourrez pas la 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 que vous souhaitez mettre à jour.                                                                                                     |
       | `credentialId`             | ID de l’ancienne information d’identification que vous souhaitez supprimer.                                                                       |
       | `managementApiAccessToken` | [Jeton d’accès pour la Management API](/docs/fr-ca/secure/tokens/access-tokens/management-api-access-tokens) avec le scope ` delete:credentials`. |
  </Tab>
</Tabs>

<div id="active-credentials">
  ### Informations d’identification actives
</div>

Pour éviter toute interruption de service, vous pouvez laisser plusieurs informations d’identification actives pendant la rotation. Les applications peuvent continuer de fonctionner normalement avec les anciennes clés jusqu’à leur mise à jour. Les applications peuvent envoyer des assertions signées avec n’importe lequel des informations d’identification actives.

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

```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](/docs/fr-ca/get-started/applications/configure-private-key-jwt)
* [Informations d’identification de l’application](/docs/fr-ca/secure/application-credentials)
* [Paramètres des informations d’identification](/docs/fr-ca/get-started/applications/credentials)
