首页 > 代码库 > 同源策略
同源策略
同源策略
1. 历史
1995 年由 Netscape 公司提出,之后被其他浏览器厂商采纳。
同源策略只是一个规范,并没有指定其具体的使用范围和实现方式,各个浏览器厂商都针对同源策略做了自己的实现。
一些 web 技术都默认采取了同源策略,这些技术范围包括但不限于Silverlight, Adobe Flash, Adobe Acrobat, Dom, XMLHttpRequest。
2. 定义
Under the policy, a web browser permits scripts contained in a first web page to access data in a second web page,
but only if both web pages have the same origin. An origin is defined as a combination of URI scheme, hostname, and port number.
判断同源的三个要素:
-
相同的协议
-
相同的域名
-
相同的端口号
3. 存在的意义
为了保证使用者信息的安全,防止恶意网站篡改用户数据
举个例子:
假设没有同源策略,那么我在A网站下的cookie就可以被任何一个网站拿到;那么这个网站的所有者,就可以使用我的cookie(也就是我的身份)在A网站下进行操作。
同源策略可以算是 web 前端安全的基石,如果缺少同源策略,浏览器也就没有了安全性可言。
4. 限制范围
非同源的网站之间
-
无法共享 cookie, localStorage, indexDB
-
无法操作彼此的 dom 元素
-
无法发送 ajax 请求
-
无法通过 flash 发送 http 请求
-
其他
同源策略
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。