2014-09-19 140 views
-1

我需要开发,其登记该用户正在使用该设备/浏览器的应用程序。比如银行还是更好的FB呢。因此,例如,当一个人登录应用程序时,会检查他们是否使用过该设备/浏览器登录过。如果没有,那么让他们通过验证过程。设备/浏览器注册

应用程序将建在.NET 4中,Asp.Net MVC,JS,jQuery的,等等。

我希望能得到一些建议什么其他人用来完成此任务。

编辑

感谢您的意见。

好了,所以基本上,如果上午的理解正确的话,这两个建议都意味着存储在笔记本电脑/设备在Cookie/localStorage的一个UNIQUEID也是在我的数据库,所以我可以识别它的未来。

我希望,能够从机器/设备是静态的,与机器/设备,这样我可以用它来追踪它获得一个唯一的ID。我的概念意味着一个用户将有几个设备/我登录的机器。

我也将捕捉IP,但我不想使用该密钥来识别用户。

+1

使用localStorage - 这是HTML5的新版本Cookie。 [教程这里(http://www.w3schools.com/html/html5_webstorage.asp) – 2014-09-19 18:38:39

+1

您可以检查出“用户代理字符串”和/或设置cookie。然而,两者都可以被操纵/删除(例如,由于到期),所以你不能100%确定。然而,根据您的使用情况,这并不是我想的问题。 – newBee 2014-09-19 18:41:57

+0

@NischaalCooray:呃,不,localStorage是* not *“HTML5的新版本的cookies”。它可以存储数据客户端,如cookie,但这是相似性结束的地方。但主要区别在于cookie数据发送到服务器,而localStorage数据仅在客户端。 – 2014-09-19 19:25:23

回答

1

从浏览器中获取精确的唯一标识符的几率是微乎其微的无法比拟的。与浏览器提供唯一标识符字符串相关的隐私风险很多。但是,您始终可以为用户创建的会话生成随机GUID,并将其存储为localStorage或cookie。

+0

是的,谢谢你,这是评论也建议。我从来没有尝试过,所以我不确定是否有可能的方式。 – ChampChris 2014-09-19 19:14:47

+0

@ChampChris你从哪里得到这个? 。我的客户也有类似的要求,他们希望跟踪每个用户使用其服务的设备数量。难点在于该服务在浏览器中运行。 似乎所有可能相关的HTML5 API的浏览器与一个例外文件系统API进行约束已被弃用,只在Chrome 实施 我到2可能接近 - 的ActiveX /小程序/闪光灯 (毓!) - 客户端证书:证书需要存储在普通的OS密钥库中。测试设备unicity通过尝试握手,这取决于证书 – diarmuid 2016-03-03 13:46:57

+0

@diarmuid我不记得现在。我没有使用localStorage我知道这一点。如果我没有正确记住代码,我所做的就是将所有浏览器信息(在Request.browser对象中)存储起来,然后将用户名和登录尝试同时拥有IP地址,这样我就知道每个浏览器用户从每个IP登录,因此如果浏览器未被识别,我会提示他们使用安全密钥进行验证并向浏览器注册名称。希望有所帮助。 – ChampChris 2016-03-03 14:07:28