Saltar al contenido principal

Formato JSON Web Token (JWT)

API: Drive (classic)

Este documento cubre la API de Drive (Classic). Si utilizas la API de Drive, consulta la gu铆a de referencia para los JWT de Drive.

Los token web JSON (JWT) son una forma de token para autenticaci贸n que se usan para comunicarse con las API de DoorDash. Permiten que dos partes se comuniquen de forma segura al firmar la informaci贸n. Los JWT permiten a los usuarios establecer confianza con el servicio sin tener que enviar un 鈥渟ecret鈥 por la red. Adem谩s, la creaci贸n de JWT tiene asistencia en todos los lenguajes de programaci贸n comunes.

Usar un JWT para la autenticaci贸n con la API

Para realizar la autenticaci贸n con la API, proporciona el JWT como token Bearer en el encabezado de autenticaci贸n.

Authorization: Bearer [JWT]

Anatom铆a de un JWT

Los JWT constan de tres partes separadas por puntos que son:

  • Encabezado
  • Carga
  • Firma

Los resultados son un token que se parece a aaa.bbb.ccc.

Encabezado

El encabezado especifica el algoritmo que se usa para firmar el token - HMAC SHA 265 (HS265) y la versi贸n (v1) de JWT de DoorDash

{
"alg": "HS256",
"typ": "JWT",
"dd-ver": "DD-JWT-V1"
}

El encabezado est谩 codificado en Base64url y constituye la primera parte del JWT.

Carga

El contenido del token es un objeto json. El destinatario puede confiar en este contenido.

Formato de la carga

{
"aud": "doordash",
"iss": DEVELOPER ID,
"kid": KEY ID,
"iat": ISSUED AT,
"exp": EXPIRATION
}

aud\: Audience (Audiencia). Siempre se establece en DoorDash.

iss\: Issuer (Emisor). Se establece en la ID del desarrollador (formato UUID).

kid\: Key ID (ID principal). Se establece en la ID principal (formato UUID) que se us贸 para firmar el JWT.

iat\: Issued At (Emitido el). Cuando se cre贸 el token. Formateado como segundos desde el Epoch. iat no puede ser en el futuro.

exp\: Expiration (Vencimiento). Cuando expira el token. Formateado como segundos desde el Epoch. exp tiene un valor m谩ximo de 30聽minutos (1800聽segundos) m谩s all谩 del momento en que se emiti贸.

EJEMPLO

{
"aud": "doordash",
"iss": "582e4f20-0f48-4bc2-99c2-e094675e2919",
"kid": "585698aa-2aa6-4bb4-8b3f-dd9d3f47dc28",
"iat": 1636463841,
"exp": 1636465641
}

La carga est谩 codificada en Base64url y constituye la segunda parte del JWT.

Firma

La firma se utiliza para verificar la autenticidad del contenido. Solo alguien con el 鈥渟ecret鈥 que permite firmar puede realizar la firma correcta. La firma se calcula mediante el algoritmo HMAC SHA256 (HS256).

La firma est谩 codificada en Base64url y constituye la tercera parte del JWT.

C贸mo proteger tu 鈥渟ecret鈥

Trata tu 鈥渟ecret鈥 que permite firmar como una contrase帽a. Guarda tu 鈥渟ecret鈥 en un almac茅n seguro o en una caja de seguridad para protegerlo de robos y usos indebidos.