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

> Descubre cómo funciona el flujo de código de autorización y por qué debes usarlo para aplicaciones web tradicionales.

# Flujo de código de autorización

El flujo de código de autorización (definido en [OAuth 2.0 RFC 6749, sección 4.1](https://tools.ietf.org/html/rfc6749#section-4.1)) consiste en intercambiar un código de autorización por un token.

Este flujo solo puede usarse para aplicaciones confidenciales (como las aplicaciones web tradicionales), ya que los métodos de autenticación de la aplicación se incluyen en el intercambio y deben mantenerse seguros.

<div id="how-authorization-code-flow-works">
  ## Cómo funciona el flujo de código de autorización
</div>

<Frame>
  <img src="https://mintcdn.com/translations/c0RQ9V0YAcT0-8l5/docs/images/cdy7uua7fh8z/7mWk9No612EefC8uBidCqr/821eb60b0aa953b0d8e4afe897228844/Auth-code-flow-diagram.png?fit=max&auto=format&n=c0RQ9V0YAcT0-8l5&q=85&s=95d3ef4044beef76aaa5a16a4558ee41" alt="Auth - Flujo de código de autorización - Diagrama de secuencia de autorización" width="1400" height="877" data-path="docs/images/cdy7uua7fh8z/7mWk9No612EefC8uBidCqr/821eb60b0aa953b0d8e4afe897228844/Auth-code-flow-diagram.png" />
</Frame>

1. El usuario selecciona **Login** en la aplicación.
2. El SDK de Auth0 redirige al usuario al Servidor de autorización de Auth0 (endpoint [`/authorize`](https://auth0.com/docs/api/authentication/authorization-code-flow/authorize-application)).
3. El Servidor de autorización de Auth0 redirige al usuario a la pantalla de inicio de sesión y autorización.
4. El usuario se autentica con una de las opciones de inicio de sesión configuradas y puede ver una pantalla de consentimiento con la lista de permisos que Auth0 otorgará a la aplicación.
5. El Servidor de autorización de Auth0 redirige al usuario de nuevo a la aplicación con un código de autorización de un solo uso.
6. El SDK de Auth0 envía el código de autorización, el ID de cliente de la aplicación y las credenciales de la aplicación, como el secreto del cliente o Private Key JWT, al Servidor de autorización de Auth0 (endpoint [`/oauth/token`](https://auth0.com/docs/api/authentication/authorization-code-flow/get-token)).
7. El Servidor de autorización de Auth0 verifica el código de autorización, el ID de cliente de la aplicación y las credenciales de la aplicación.
8. El Servidor de autorización de Auth0 responde con un token de ID y un token de acceso (y, opcionalmente, un Token de actualización).
9. La aplicación puede usar el token de acceso para llamar a una API y acceder a información sobre el usuario.
10. La API responde con los datos solicitados.

<div id="how-to-implement-authorization-code-flow">
  ## Cómo implementar el flujo de código de autorización
</div>

La forma más sencilla de implementar el flujo de código de autorización es seguir nuestras [guías de inicio rápido para aplicaciones web tradicionales](/es/docs/quickstart/webapp).

Como alternativa, puede usar la API de autenticación para implementar el flujo de código de autorización. Para obtener más información, consulte [Agregar inicio de sesión mediante el flujo de código de autorización](/es/docs/get-started/authentication-and-authorization-flow/authorization-code-flow/add-login-auth-code-flow) o [Llamar a su API mediante el flujo de código de autorización](/es/docs/get-started/authentication-and-authorization-flow/authorization-code-flow/call-your-api-using-the-authorization-code-flow).

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  Si una aplicación de navegador con un encabezado Origin realiza una solicitud `POST` al endpoint `/oauth/token`, Auth0 no emite Tokens de actualización, incluso si la aplicación tiene habilitada la opción [Permitir la rotación del Token de actualización](/es/docs/secure/tokens/refresh-tokens/configure-refresh-token-rotation) y envía el scope [offline\_access](/es/docs/secure/tokens/refresh-tokens/configure-refresh-token-rotation#configure-with-the-auth0-spa-sdk).
</Callout>

<div id="learn-more">
  ## Más información
</div>

* [Auth0 Rules](/es/docs/customize/rules)
* [Auth0 Hooks](/es/docs/customize/hooks)
* [Tokens](/es/docs/secure/tokens)
* [Prácticas recomendadas para tokens](/es/docs/secure/tokens/token-best-practices)
* [¿Qué flujo de OAuth 2.0 debería usar?](/es/docs/get-started/authentication-and-authorization-flow/which-oauth-2-0-flow-should-i-use)
