Mejores prácticas para almacenar y enviar huellas digitales del navegador a puntos finales protegidos

0

Tengo una API grande y JSON Web Tokens (JWT) utilizados para la autorización del usuario. Estos tokens se validan en el frontend (proxy nginx) con el código Lua. Ahora quiero asegurar mi API un poco más con las huellas digitales del navegador. La idea es almacenar la huella digital del cliente en el token JWT y pasar esta huella del cliente al servidor con cada solicitud. Si las huellas dactilares coinciden, entonces está bien, si no, entonces bloqueamos el acceso, ya que nuestra ficha probablemente fue robada.

Hay muchas maneras de crear huellas digitales en el navegador y Fingerprintjs2 parece una buena solución. Lo que quiero saber es cómo en el mundo real almacenan esta huella digital (¿o cada vez que la generan?) Y cómo la envían al servidor (mediante cookies, encabezados, obtener o publicar parámetros).

    
pregunta Jacobian 06.11.2017 - 13:01
fuente

1 respuesta

1

la toma de huellas dactilares se usa para cualquier cosa que no sea seguridad, por lo que no la use para tal fin.

Ya que está usando openresty, de hecho puede agregar seguridad a su controlador de sesión lua-resty-session tiene varias opciones diferentes en cuanto a dónde almacenar los datos de la sesión.

Cuando lees adaptadores de almacenamiento conectables , verás una tabla de adaptadores de almacenamiento. .

Para su propósito, le sugiero que implemente uno con Extra Security e implemente HMAC.

Esto asegurará que los datos de la sesión permanezcan en el servidor y que el cliente solo tenga un token HMAC que no puedan alterar sin perder la sesión.

Para obtener protección adicional, puede agregar un poco de código a la autenticación Lua para asegurarse de que la sesión se invalida cuando cambie la fuente de IP.

Espero que esto responda a tu pregunta.

- Incluyendo un comentario que hice a este creador.

las huellas dactilares se pueden utilizar para mejorar la seguridad de un usuario específico; sin embargo, no es adecuado reemplazar otros medios de identificación.

(véalo como un cheque de identificación en un funcionario de aduanas, su pasaporte lo identifica a usted, su número (y el cheque que realizan los sistemas automatizados) valida que el documento es real. Y la imagen de su imagen se puede usar para validarse a sí mismo para el oficial. Así que en total, mientras que solo hay 1 portador principal de autenticidad (el pasaporte), se realizan muchos controles para validarlo.

Cada cheque se suma a la certeza de que la persona es quien dice ser. y como parte de un esquema de autenticación, puede agregar la huella digital como información adicional para probar la identidad. Pero nunca debe reemplazar otras pruebas, ya que es genérico, y para forjar o extraer fácilmente por otros medios.

    
respondido por el LvB 06.11.2017 - 13:36
fuente

Lea otras preguntas en las etiquetas