¿Eligiendo token sobre sesión o viceversa?

3

Quería crear una interacción de usuario segura con el servidor, pero me topé con el uso de token o sesión. Aquí hay un par de opciones que pensé:

  1. Aprendí JWT, construí un token y lo envié de un lado a otro entre el servidor y el cliente en mi servidor local. Parece una buena cosa que hacer, ya que usando HTTPS, solo dos partes podrán comunicarse entre ellas, por lo tanto, bastante seguras.

  2. Sin embargo, cuando miré en sitios web como Facebook, Twitter, Instagram, no tienen token, pero tienen sesión con muchas variables. Supongo que son para autenticación.

¿Qué opción es una forma correcta de optar? Opto por elegir token, ya que es seguro, digo, por qué el servidor de carga con el cliente de carga puede manejar cuándo se puede descargar si se usa el token.

Sin embargo, tengo la sensación de que los tokens básicamente no se usan en el sitio web, sino solo en las API.

    
pregunta Rockink 24.08.2015 - 18:14
fuente

1 respuesta

1

Un token y una sesión son básicamente lo mismo en una vista diferente. Una cookie sería una cosa diferente.

Como el protocolo HTTP no tiene estado, el servidor debe tener una forma de mantener el estado de la conexión. Una sesión (generalmente) es un archivo almacenado en el servidor , con todas las variables de estado del cliente. El token es el valor que se envía desde el cliente, por lo que el servidor sabe qué archivo leer. Una sesión y su token son más seguros que una cookie porque el cliente no puede cambiar campos arbitrarios y genera menos tráfico.

Una cookie es otro enfoque: es un archivo almacenado en el cliente con todos los datos de la sesión. Se almacenan todos los datos de la conexión. No me gustan las cookies debido a la sobrecarga de asegurarse de que el cliente no haya cambiado ningún valor.

    
respondido por el ThoriumBR 24.08.2015 - 19:36
fuente

Lea otras preguntas en las etiquetas