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

> Describe cómo rotar credenciales existentes en el Auth0 Dashboard.

# Rotar credenciales

Auth0 recomienda que rote el material de claves con regularidad para cumplir sus requisitos de cumplimiento normativo y garantizar que la seguridad no se vea comprometida si se filtran claves privadas. Puede usar el <Tooltip tip="Auth0 Dashboard: producto principal de Auth0 para configurar sus servicios." cta="Ver glosario" href="/es/docs/glossary?term=Auth0+Dashboard">Auth0 Dashboard</Tooltip> o la <Tooltip tip="Auth0 Dashboard: producto principal de Auth0 para configurar sus servicios." cta="Ver glosario" href="/es/docs/glossary?term=Management+API">Management API</Tooltip> para poner en uso nuevas claves. Debe crear una nueva credencial, asociarla con el método de autenticación `private_key_jwt` y eliminar las credenciales antiguas o sin usar.

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  El límite actual de almacenamiento de la aplicación es de dos credenciales simultáneamente. Para seguir rotando credenciales nuevas, debe eliminar las credenciales sin usar.
</Callout>

<Tabs>
  <Tab title="Usar Auth0 Dashboard">
    Para rotar las credenciales de su aplicación con Auth0 Dashboard:

    1. Vaya a [**Auth0 Dashboard > Applications > Application**](https://manage.auth0.com/#/applications) y seleccione la aplicación que desea actualizar.
    2. Abra la pestaña **Credentials**.
    3. En la sección **Available Credentials**, seleccione **Add New Key**.
    4. Indique un nombre para la nueva credencial, la clave pública en formato PEM y el algoritmo de la nueva credencial.
    5. Seleccione **Add Credential**.
    6. Para activar la nueva credencial, vaya al menú de la credencial y elija **Enable for Private Key JWT use**.
    7. Una vez que haya actualizado sus aplicaciones para usar la nueva credencial, desactive la credencial original:

       1. Seleccione **Disable for Private Key JWT Use**.
       2. Una vez desactivada, vuelva al menú de la credencial y seleccione **Delete Credential**.
  </Tab>

  <Tab title="Usar Management API">
    En los siguientes ejemplos de rotación, `credential1` es una credencial existente en uso y `credential2` es una credencial nueva para reemplazarla.

    1. Genere un nuevo par de claves.

    2. Cree el recurso de credencial con una solicitud `POST` a la Management API.

           <Callout icon="file-lines" color="#0EA5E9" iconType="regular">
             El límite actual de almacenamiento por aplicación es de dos credenciales al mismo tiempo. Para rotar credenciales nuevas de forma repetida, debe eliminar las credenciales que no use.
           </Callout>

    3. Haga una solicitud `PATCH` al endpoint de Management API [Update a Client](https://auth0.com/docs/api/management/v2#!/Clients/patch_clients_by_id) para asociar la credencial con el método de autenticación `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} }]
                    }
                 }
          }'
       ```

       | Parámetro                  | Descripción                                                                                                                                                        |
       | -------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
       | `clientId`                 | Aplicación que desea actualizar.                                                                                                                                   |
       | `credentialId1`            | ID de la credencial existente en uso.                                                                                                                              |
       | `credentialId2`            | ID de la nueva credencial.                                                                                                                                         |
       | `managementApiAccessToken` | [Token de acceso para Management API](/es/docs/secure/tokens/access-tokens/management-api-access-tokens) con los alcances `update:clients` y `update:credentials`. |

    4. Actualice su aplicación para usar la nueva clave privada y firmar aserciones para la API de autenticación de Auth0.

    5. Elimine la clave sin usar de su aplicación.

       ```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. Elimine la clave sin usar de su aplicación. Esto eliminará permanentemente la credencial del almacenamiento. Debe desasociar la credencial de su aplicación o no podrá eliminarla.

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

       | Parámetro                  | Descripción                                                                                                                                  |
       | -------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
       | `clientId`                 | Aplicación que desea actualizar.                                                                                                             |
       | `credentialId`             | ID de la credencial anterior que desea eliminar.                                                                                             |
       | `managementApiAccessToken` | [Token de acceso para Management API](/es/docs/secure/tokens/access-tokens/management-api-access-tokens) con el scope ` delete:credentials`. |
  </Tab>
</Tabs>

<div id="active-credentials">
  ### Credenciales activas
</div>

Para garantizar un tiempo de inactividad nulo, puede dejar varias credenciales activas durante la rotación. Las aplicaciones pueden seguir funcionando normalmente con claves anteriores hasta que se actualicen las claves. Las aplicaciones pueden enviar aserciones firmadas con cualquier conjunto de credenciales activas.

Auth0 recomienda minimizar el tiempo durante el que se usan varias credenciales. En el ejemplo siguiente se usan varias credenciales asociadas:

```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">
  ## Más información
</div>

* [Configurar la autenticación con Private Key JWT](/es/docs/get-started/applications/configure-private-key-jwt)
* [Credenciales de la aplicación](/es/docs/secure/application-credentials)
* [Configuración de credenciales](/es/docs/get-started/applications/credentials)
