He creado autenticación basada en JWT en mi aplicación Web API. No puedo averiguar la diferencia entre
- Token básico
- Token de portador
¿Alguien puede ayudarme?
fuente
He creado autenticación basada en JWT en mi aplicación Web API. No puedo averiguar la diferencia entre
¿Alguien puede ayudarme?
Los esquemas de autenticación básica y implícita están dedicados a la autenticación mediante un nombre de usuario y un secreto (consulte RFC7616 y RFC7617 ).
El esquema de autenticación de portador está dedicado a la autenticación mediante un token y se describe en el RFC6750 . Incluso si este esquema proviene de una especificación OAuth2, aún puede usarlo en cualquier otro contexto donde los tokens se intercambien entre un cliente y un servidor.
Con respecto a la autenticación JWT y como es un token, la mejor opción es el esquema de autenticación de portador. Sin embargo, nada le impide utilizar un esquema personalizado que se ajuste a sus necesidades.
La autenticación básica transmite las credenciales como pares de ID de usuario / contraseña, codificados en base64. El cliente envía solicitudes HTTP con elAuthorization
encabezado que contiene la palabraBasic
palabra seguida de un espacio y unabase64-encoded
cadena de nombre de usuario: contraseña.
Autorización: Basic ZGVtbzpwQDU1dzByZA ==
Nota: Para la autenticación básica, como el ID de usuario y la contraseña se pasan a través de la red como texto sin cifrar (está codificado en base64, pero base64 es una codificación reversible), el esquema de autenticación básico no es seguro. HTTPS / TLS debe usarse junto con la autenticación básica.
La autenticación de portador (también llamada autenticación de token ) tiene tokens de seguridad llamados tokens de portador. El nombre "Autenticación de portador" puede entenderse como " dar acceso al portador de este token ". El token de portador es una cadena críptica, generalmente generada por el servidor en respuesta a una solicitud de inicio de sesión. El cliente debe enviar este token en el encabezado de Autorización al realizar solicitudes a recursos protegidos:
Autorización: Portador <token>
Nota: De manera similar a la autenticación básica, la autenticación de portador solo debe usarse sobre HTTPS (SSL) .