通过手机浏览器获取IMEI号码/ sim卡号码/手机号码

17
以下是场景: 我有一个可通过移动浏览器访问的Web应用程序。 每当用户在我的应用程序页面上通过 Web 浏览器点击链接时,我需要检测移动设备的 IMEI 和 SIM IMSI。这是为了跟踪使用相同 SIM 卡的同一设备,并为他/她提供下一级别的访问权限。由于我的页面中没有用户登录的选项,因此无法使用登录 ID 来跟踪用户。
问题是如何通过移动浏览器获取特定移动设备的唯一设备 ID / SIM ID。 现在我主要关注基于 Android 的移动设备。但目标是使其适用于任何设备。
大部分想法的重点是,浏览器对手机及其应用程序具有什么样的访问权限?
1. 通过以下方式,我们可以从浏览器链接中打开本地应用程序:
<a href="productcateory://<productid>/<customerid>">Get Details</a> 

这里的productcategory将唯一标识一个本地应用程序并调用它。但这是单向通信。如何从调用点获得一些响应并动态填充一些隐藏的表单字段。

  1. 通过网页脚本,我们可以在客户端机器上存储一些数据并稍后检索它。但其范围有限,并且与IMEI或IMSI号码无关。

  2. 有没有办法从网页中获取到移动浏览器应用程序(记住它像任何其他移动应用程序一样)并通过我的页面中的脚本获取id详细信息?

  3. HTML5是否提供了此方面的任何选项?我知道HTML5中有一个localstorage标签,可以在客户端位置存储ID并稍后检索它。但是,这仅限于相同的设备和同一移动浏览器,并且这是获得IMEI/IMSI号码的另一种解决方案。

请告诉我是否有任何其他选项,而不必要求用户在设备上安装本地应用程序或浏览器插件?

~inkriti


我不认为这是可能的... - Tobias
6
您所要求的是一种跟踪用户手机的方法,而且这种方式用户无法控制,仅因为他们访问了一个网页。浏览器不允许这样做是有原因的。 - Wyzard
3个回答

17

由于某些非常重要的原因,Web浏览器无法访问移动电话的IMEI或IMSI号码,除非进行一些开发团队没有预料到的恶意黑客攻击。

另外,Android浏览器不支持插件。

你唯一的选择是创建一个本地应用程序。这个答案有一些信息对你会有用: 在Android手机上编程获取电话号码。然而它并不是一个完美的解决方案。

我还想问一下,为什么你要访问用户的电话号码?如果只是为了跟踪会话,那么请使用JavaScript生成一个唯一标识符并将其存储在cookie中。


1
Cookie的问题在于,Cookie可以被启用或禁用,甚至被删除。IMEI和IMSI号码可以确保这是正确的手机/ SIM组合,我的应用程序将来也将继续响应正确的用户。 - inkriti
1
关于Cookie建议:听起来你只想追踪会话。因此,使用JavaScript检查Cookie。如果Cookie不存在,则生成唯一ID并写入Cookie。然后使用Ajax调用Web服务将唯一ID记录为会话。任何时候想要检查会话,只需读取Cookie并使用Ajax检查其是否有效。假设您将其存储在持久Cookie中,即使关闭浏览器,它也会保留。它可以被删除,您只需要编写您的Web应用程序以允许这种情况发生。 - Michael Allen
一个好建议,Mike。谢谢。我的主要想法是正确跟踪设备/SIM组合,而不是会话。这样,即使用户使用自己的SIM卡更换了不同的手机,我也可以跟踪并通知用户,并要求他进行下一级身份验证以打开他特定授权区域。另外,您有什么想法,HTML5本地存储与持久会话有何不同? - inkriti
抱歉,我还没有使用过HTML5本地存储。关于跟踪用户IMEI的事情,我相信在大多数国家这是非法的。即使在法国,持久性cookie也存在问题,但我很确定你想做的是非法的。 - Michael Allen
更正:安卓浏览器支持插件。https://dev59.com/-m865IYBdhLWcg3wKLJP - RayLoveless

2
原始问题可能已经关闭,但是对于未来可能会遇到这个问题的任何人(比如我自己),解决方式可能是通过短信确认的两步注册。最接近获取 IMEI 号码的方式(没有原生应用程序就不可能)是让用户注册并包括短信确认——在大多数情况下,手机号码将是唯一的,只有在更换设备时才会发生变化,并且可以从客户端进行一些假设以猜测他们拥有的设备类型。如果您关心唯一性,甚至可以进一步要求他们识别其设备的制造商/操作系统。然而,在大多数情况下,手机短信确认已经足够了。

0

唯一可靠的方法是编写一个应用程序并让其发送短信,然后跟踪该端口上的号码;假设用户已启用SMS/文本服务。这在非手机设备(平板电脑)上无法使用。

跟踪设备(IMEI)并不重要,也不必要,而且可能是非法的;只需跟踪用户即可。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接