> ## 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 la diferencia entre los tipos de aplicaciones confidenciales y públicas.

# Aplicaciones confidenciales y públicas

Según la [especificación de OAuth 2.0](https://tools.ietf.org/html/rfc6749#section-2.1), las aplicaciones pueden clasificarse como confidenciales o públicas. La principal diferencia radica en si la aplicación puede almacenar credenciales (como un <Tooltip tip="ID de cliente: valor de identificación asignado a su recurso registrado en Auth0." cta="Ver glosario" href="/es/docs/glossary?term=client+ID">ID de cliente</Tooltip> y un secreto) de forma segura. Esto afecta al tipo de autenticación que pueden usar las aplicaciones.

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  Confidencial/pública y propia/de terceros son clasificaciones independientes. Confidencial o pública describe la capacidad de autenticación de la aplicación (si puede almacenar un secreto). Propia o de terceros describe la relación de confianza (quién es el propietario y quién opera la aplicación). Para obtener más información, consulte [Aplicaciones propias y de terceros](/es/docs/get-started/applications/first-party-and-third-party-applications).
</Callout>

Cuando crea una aplicación en el Auth0 Dashboard, Auth0 le preguntará qué tipo de aplicación de Auth0 desea asignar a la nueva aplicación y usará esa información para determinar si la aplicación es confidencial o pública.

Para obtener más información, consulte [Compruebe si una aplicación es confidencial o pública](/es/docs/get-started/applications/confidential-and-public-applications/view-application-type).

<div id="confidential-applications">
  ## Aplicaciones confidenciales
</div>

Las aplicaciones confidenciales pueden almacenar credenciales de forma segura sin exponerlas a terceros no autorizados. Requieren un servidor backend de confianza para almacenar el secreto o los secretos.

<div id="grant-types">
  ### Tipos de concesión
</div>

Las aplicaciones confidenciales usan un backend de confianza y pueden usar tipos de concesión que requieren especificar su ID de cliente y <Tooltip tip="Secreto del cliente: secreto que usa un cliente (aplicación) para autenticarse ante el Servidor de autorización; solo deberían conocerlo el cliente y el Servidor de autorización, y debe ser lo suficientemente aleatorio para que no se pueda adivinar." cta="Ver glosario" href="/es/docs/glossary?term=Client+Secret">Secreto del cliente</Tooltip> (o credenciales registradas alternativas) para autenticarse al llamar al endpoint [Obtener token](https://auth0.com/docs/api/authentication#get-token) de la API de autenticación de Auth0. Las aplicaciones confidenciales pueden usar los métodos de autenticación Client Secret Post, Client Secret Basic o [Private Key JWT](/es/docs/get-started/authentication-and-authorization-flow/authenticate-with-private-key-jwt).

Se consideran aplicaciones confidenciales las siguientes:

* Una aplicación web con un backend seguro que usa el [Flujo de código de autorización](/es/docs/get-started/authentication-and-authorization-flow/authorization-code-flow), el [flujo de contraseña del propietario del recurso](/es/docs/get-started/authentication-and-authorization-flow/resource-owner-password-flow) o el flujo de contraseña del <Tooltip tip="Propietario del recurso: entidad (como un usuario o una aplicación) capaz de conceder acceso a un recurso protegido." cta="Ver glosario" href="/es/docs/glossary?term=Resource+Owner">propietario del recurso</Tooltip> con soporte para realm
* Una aplicación de máquina a máquina (M2M) que usa el [flujo de credenciales del cliente](/es/docs/get-started/authentication-and-authorization-flow/client-credentials-flow)

<div id="id-tokens">
  ### ID Token
</div>

Como las aplicaciones confidenciales pueden almacenar secretos, se les pueden emitir <Tooltip tip="ID Token: Credencial destinada al propio cliente, en lugar de al acceso a un recurso." cta="Ver glosario" href="/es/docs/glossary?term=ID+tokens">ID Token</Tooltip> firmados de una de estas dos maneras:

* Simétricamente, usando su Secreto del cliente (`HS256`)
* Asimétricamente, usando una clave privada (`RS256`)

<div id="public-applications">
  ## Aplicaciones públicas
</div>

Las aplicaciones públicas **no pueden** guardar credenciales de forma segura.

<div id="grant-types">
  ### Tipos de concesión
</div>

Las aplicaciones públicas solo pueden usar tipos de concesión que no requieran el uso de su Secreto del cliente. No pueden enviar un Secreto del cliente porque no pueden mantener la confidencialidad de las credenciales necesarias.

Estas son aplicaciones públicas:

* Una aplicación nativa de escritorio o móvil que usa el [Flujo de código de autorización con PKCE](/es/docs/get-started/authentication-and-authorization-flow/authorization-code-flow-with-pkce)
* Una aplicación web del lado del cliente basada en JavaScript (como una aplicación de una sola página) que usa la concesión [Flujo implícito](/es/docs/get-started/authentication-and-authorization-flow/implicit-flow-with-form-post)

<div id="id-tokens">
  ### ID Token
</div>

Como las aplicaciones públicas no pueden almacenar secretos, los [ID Token](/es/docs/secure/tokens/id-tokens) emitidos para ellas deben:

* Firmarse asimétricamente con una clave privada (`RS256`)
* Verificarse con la clave pública correspondiente a la clave privada utilizada para firmar el token

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

* [Compruebe si una aplicación es confidencial o pública](/es/docs/get-started/applications/confidential-and-public-applications/view-application-type)
* [Aplicaciones propias y de terceros](/es/docs/get-started/applications/first-party-and-third-party-applications)
* [Aplicaciones de terceros](/es/docs/get-started/applications/third-party-applications)
* [Consentimiento del usuario y aplicaciones de terceros](/es/docs/get-started/applications/third-party-applications/user-consent-and-third-party-applications)
