识别访问html页面的设备

时间:2012-03-02 19:17:26

标签: security html5 web-applications

目标: 限制访问我的HTML5(.html)webapp的授权设备。

这就是困境: 我有一个HTML5离线应用程序(.html),它将从Web可访问的URL加载其所有资源。我想限制对指定设备的访问。

问题:

  • 识别设备。由于.html页面无法检索mac 设备的地址,以及用户是否可以指定mac地址 它很容易伪造。
  • 由于所有设备都是相同的(iPad)。用户代理不允许我唯一地识别设备,它可能总是伪造的。

无论如何,通过Webkit / Safari中的唯一值来识别设备是否容易伪造? Mac地址将是理想的值,但由于这是不可能的,我正在寻找任何其他有助于识别设备唯一的想法。

在一个完美的世界中,设备会加载webapp,webapp会向CMS发出ajax请求,以验证设备的唯一标识符并返回结果。

任何想法或想法都表示赞赏。谢谢!

2 个答案:

答案 0 :(得分:1)

此处您最好的解决方案是在客户端平板电脑和服务器之间部署经过相互身份验证的SSL。您可以在此处使用自签名证书,这样您就无需从CA购买任何证书。这将确保您的服务器仅接受来自具有客户端证书的平板电脑的请求(将您的服务器配置为仅接受在平板电脑上部署的自签名客户端证书以进行客户端身份验证)。

答案 1 :(得分:0)

这必须在服务器端完成。 Web客户端(浏览器)向服务器发送请求及其详细信息。现在你可以用javascipt

来做
var browser = navigator.appName;
if (browser == "bad") window.location = "http://example.com";

但设备必须加载并执行代码。

最好的方法是使用PHP

$browser = $_SERVER['HTTP_USER_AGENT'];
if ($browser == "bad") header ("Location: http://example.com");

但无论哪种方式,您都可以提供错误的详细信息,因为您在请求中提供了信息。