Estoy aprendiendo algo sobre Autorización como Basic, Digest, OAuth2.0, JWTs y Bearer Token.
Ahora tengo una pregunta.
Sabe que los JWT se utilizan como Access_Token en el estándar OAuth2.0. Los JWT aparecen en RFC 7519 y Bearer Token está en RFC 6750.
Por ejemplo, el Portador:
Authorization: Bearer <token>
Solía enviar token al servidor por AJAX o agregar token a la cadena de consulta de la URL. Sé que también se puede enviar un token agregándolo a un encabezado de solicitud. ¿Eso significa que el token debe agregarse al encabezado del Portador de autorización?
¿Podría decirme la relación entre los JWT y el Bearer Token? Muchas gracias.
auth-header
paquete si desea un analizador mínimoRespuesta corta
Los JWT son una forma conveniente de codificar y verificar reclamaciones .
Un token de portador es solo una cadena, potencialmente arbitraria, que se usa para la autorización.
Contexto (hora del cuento)
Hace unos años, antes de la revolución JWT, a
<token>
era solo una cadena sin significado intrínseco, por ejemplo, 2pWS6RQmdZpE0TQ93X. Luego, ese token se buscó en una base de datos, que contenía los reclamos para ese token. La desventaja de este enfoque es que se requiere acceso a la base de datos (o un caché) cada vez que se usa el token.Los JWT codifican y verifican (mediante la firma) sus propios reclamos . Esto permite a la gente emitir JWT de corta duración que son apátridas (léase: autónomo, no dependa de nadie más). No necesitan golpear la base de datos. Esto reduce la carga de la base de datos y simplifica la arquitectura de la aplicación porque solo el servicio que emite los JWT debe preocuparse por alcanzar la capa de DB / persistencia (la
refresh_token
que probablemente haya encontrado).fuente
Los JWT funcionan con dos tipos de token, Parámetro Token: el token de acceso pasa como parámetro. Bearer Token: se pasa en el encabezado con 'Bearer'.
Lea también la siguiente pregunta:
¿Qué son los tokens de portador y token_type en OAuth 2?
fuente