首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >存储浏览器指纹并将其提交到安全端点的最佳实践

存储浏览器指纹并将其提交到安全端点的最佳实践
EN

Security用户
提问于 2017-11-06 12:01:51
回答 1查看 2.3K关注 0票数 1

我有一个用于用户授权的大型API和JSON令牌(JWT)。这些令牌在前端(nginx代理)上使用Lua代码进行验证。现在,我想用浏览器指纹来保护我的API。其思想是将客户端指纹存储在JWT令牌中,并在每个请求中将此指纹从客户端传递到服务器。如果指纹匹配在一起,那么就可以了,如果没有,我们就阻止访问,因为我们的令牌可能被偷了。

创建浏览器指纹的方法很多,Fingerprintjs2似乎是一个很好的解决方案。我想知道的是,在现实世界中,他们是如何存储这个指纹的(或者每次都是动态生成的?)以及如何将其提交给服务器(使用cookie、头、get或post参数)。

EN

回答 1

Security用户

回答已采纳

发布于 2017-11-06 12:36:42

指纹只用于安全以外的任何东西,所以不要使用它来达到这样的目的。

由于您使用的是openresty,您实际上可以向会话处理程序添加安全性,露-瑞-会议在存储会话数据的位置有几个不同的选项。

当您阅读可插入式存储适配器时,您会看到一个存储适配器表。

为了您的目的,我建议您用Extra Security实现一个,并实现HMAC。

这将确保会话数据留在服务器上,并且客户端只有一个HMAC令牌,它们不能在不丢失会话的情况下更改它。

为了获得额外的保护,您可以向身份验证Lua添加一些代码,以确保在ip源更改时会话无效。

我希望这能回答你的问题。

--包括我对这位律师的评论.

指纹可以用来增强特定用户的确定性,但它不适合替代其他识别手段。

(将其视为海关官员的身份证检查,您的护照确认您的身份,其编号(以及自动系统所做的检查)确认该文件是真实的。你的照片可以用来向警官证明自己的身份。因此,总的来说,虽然只有一个主要的真实性载体(护照),但有许多检查,以验证它。

每一次检查都增加了他/她自称的人的确定性。作为身份验证方案的一部分,您可以将指纹作为附加信息添加到身份验证中。但是,它不应取代其他证据,因为它的普遍性,并容易伪造或提取通过其他手段。

票数 1
EN
页面原文内容由Security提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://security.stackexchange.com/questions/172928

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档