假设我将B站点的一段JavaScript嵌入到A站点的页面中。 B脚本的来源是否变为A?
引用一些官方文件:
来自RFC 6454 - The Web Origin Concept。
3.1 TRUST
同源策略通过URI指定信任。例如,HTML 文档指定使用URI运行的脚本:
<script> src="https://example.com/library.js"></script>
当用户代理时 处理此元素时,用户代理将获取该脚本 指定URI并使用权限执行脚本 文献。通过这种方式,文档授予它拥有的所有权限 到URI指定的资源。从本质上讲,文件 声明它信任从中检索的信息的完整性 那个URI 。
另一个例子来自RFC 6454 - The Web Origin Concept:
例如,考虑HTML文档中的跨站点脚本。如果 攻击者可以将脚本内容注入到HTML文档中 脚本可能会以文档的来源运行 允许脚本访问敏感信息,例如 用户的医疗记录。
答案 0 :(得分:4)
脚本使用它们嵌入的帧的原点运行,而不是它们从中加载的原点。如果从其他站点加载脚本,例如
<script src="http://example.com/example.js"></script>
该脚本的行为与从您自己的站点加载它的行为完全相同,或者如果您将其嵌入内联。它没有相对于从中加载的站点的特殊权限。