【问题标题】:iframe cross-domain validate calleriframe 跨域验证调用者
【发布时间】:2013-04-26 05:33:40
【问题描述】:

我在 A.com 上有一个页面,其中有一个 iframe,其 "src="B.com 上。 例如src="http://B.com/index.asp?123456"

查询字符串123456 是分配给域A.com 的客户端密钥。 index.asp 使用密钥进行数据库查找以识别域。

我如何确保拨打电话的是A.com 上的一个页面?

我考虑过通过location.host,但这可能会被黑客入侵。 也就是说,C.com 可以说:通过将location.host 更改为B.com,它是B.com

(显然,location.host 是通过 JavaScript 确定的。)

A.com 上可以有其他 HTML 代码,而不仅仅是 iframe。

【问题讨论】:

    标签: iframe cross-domain


    【解决方案1】:

    您可以使用 postMessage 并验证事件对象的来源。但您不应依赖任何涉及安全性的客户端验证。只需在任何开发者工具中的 post 消息回调上添加一个断点就可以轻松绕过此方法。

    【讨论】:

    • 我认为 postMessage 是 HTML5 并且它不适用于所有浏览器。但是,正如你所说,它可以被黑客入侵。
    • 这里是一个非HTML5跨域消息传递框架EaxyXDM
    猜你喜欢
    • 2022-01-16
    • 1970-01-01
    • 2011-11-06
    • 2021-11-06
    • 2011-08-20
    • 2011-08-02
    • 1970-01-01
    • 2011-01-18
    相关资源
    最近更新 更多