2012-08-31 138 views
0

我实施一个JS插件,与源代码中的窗口小部件是上domain1.com 微件(观看者)的主机上domain2.com

在domain1.com我使用PHP作为服务器的脚本语言。

我需要的是检查小部件托管域是否被允许从服务于小部件服务的domain1.com获取答案。

我想进行这样的事情:

上domain2.com:

<html> 
    <head></head> 
    <body> 
     <div id="widget-container"></div>   
    </body> 
    <script src="http://domain1.com/widget/viewer.php" type="text/javascript"></script> 
</html> 

上domain1.com:

<?php 
    if(in_array($_SERVER['HTTP_REFERER'], $allowedDomains)){ 
     /* echo all widget goodness*/ 
    }else{ 
     die('you\'ve not permission to get this service'); 
    } 
?> 

是否可靠检查$_SERVER['HTTP_REFERER']变量授予主机域来访问我的小部件?

+0

你的安全意味着什么? 引用者可能是伪造的,但取决于您希望的安全级别,它将被接受与否。 – Jarry

+0

与安全我的意思是,如果有任何机会,该引荐人可能是空的或改变。因为只有我允许访问我的小部件数据到某个带有小部件托管页面的domainname.com,如果有机会,如上所述,它不会获得任何数据 – kante

回答

0

不,它不安全,引用者可以随意篡改。

看到referer-control

事实上,在请求什么都可以伪造。

你应该看看别的东西来保护你的小部件,比如https +会话。

相关问题