我想提供一个可嵌入其他网站的网络服务 - 现在我需要一个保护嵌入的解决方案 - 以便只允许服务器嵌入页面......
您认为嵌入页面的最佳方式是什么(这是一个PHP脚本)?
保护它的最佳方法是什么?
我尝试了一些像iframe嵌入和php $_SERVER['HTTP_REFERER']
保护(这不是真正的保存;)
那么有没有人有更好的主意? Javascript,htaccess,......?
答案 0 :(得分:1)
您可以检查$_SERVER["REMOTE_ADDR"]
,服务器是来电者,您可以过滤不需要的内容。
另一种方式是@Mike伤心,创建一个API,什么需要安全令牌。
如果要检查来电者的IP,请执行以下操作:
$allowedHosts = array('192.168.1.1', '192.168.1.2');
if (in_array($_SERVER["REMOTE_ADDR"], $allowedHosts)) {
//Do what you want
} else {
die('Your host is not allowed');
}
修改强>
OP问道:与伪造$ _SERVER [" REMOTE_ADDR"]信息的容易程度有关?
不知道,据我所知,它并不那么容易。也许有办法抄袭IP。
如果您正在处理非常敏感的数据,我的建议是使用IP AND 验证安全令牌。
您需要创建一个接口,为传入的请求提供服务。如果我需要像你的工作那样做,这就是我的方式:
检查传入的IP。 (我用代码写的)。我们在请求中使用API密钥/安全密钥。检查这些参数是否正确。
从客户端,首先获取安全令牌。如果API密钥和scurity密钥正确,请为客户端提供安全令牌。令牌应该在短时间内到期,例如。 5-15分钟。
仅使用API密钥,安全密钥,安全令牌提供下一个请求。
使用https protocoll。
如果来自同一IP的请求失败很多,请禁止该IP或阻止它一段时间。