同源策略如何应用于浏览器扩展?

Posted

技术标签:

【中文标题】同源策略如何应用于浏览器扩展?【英文标题】:How does Same Origin Policy apply to browser extensions? 【发布时间】:2012-08-04 16:52:07 【问题描述】:

鉴于浏览器扩展程序将信息从一个网页发送到完全不同的服务器,这是否违反了同源策略?

【问题讨论】:

【参考方案1】:

同源策略 (SOP) 适用于普通网页,而不是浏览器扩展,即使它们是用 javascript 编写的。当扩展代码不是来自服务器时,“不同的服务器”是什么意思? (扩展脚本可能有某种来源,例如chrome-extension://longhashidentificationstr,但不是传统的域/来源。)要与任何网页通信(除了那些有CORS headers的网页),扩展不受 SOP 约束。

扩展并不完全“违反” SOP;相反,SOP 不适用于他们。 SOP 旨在限制可能由受损或恶意网页造成的损害。查看网页应该要求页面中零信任,因为访问网页非常容易。但是,安装扩展程序是用户不常做的事情,对用户的影响更大,因此要求对扩展程序有一定的信任并不是没有道理的。

【讨论】:

以上是关于同源策略如何应用于浏览器扩展?的主要内容,如果未能解决你的问题,请参考以下文章

通过扩展让ASP.NET Web API支持JSONP

Postman 如何发送请求? ajax,同源策略

同源策略

Chrome:禁用本地主机的同源策略

浏览器的同源策略

如何解决跨域问题