A网页设置的 Cookie,B网页不能打开,除非这两个网页"同源"。所谓"同源"指的是"三个相同"。ajax
https:// www.baidu.com: 80 协议相同 域名相同 端口相同
http://www.example.com/dir2/other.html :同源 http://example.com/dir/other.html :不一样源(域名不一样) http://v2.www.example.com/dir/other.html:不一样源(域名不一样) http://www.example.com:81/dir/other.html:不一样源(端口不一样)
- 不一样源cookie不能互相获取: 保护cookie防止csrf攻击 - ajax不能异源请求
django的seesion和cookie机制-理解csrf攻击流程
django处理csrf攻击的方法django
同源政策的目的,是为了保证用户信息的安全,防止恶意的网站窃取数据。json
设想这样一种状况:A网站是一家银行,用户登陆之后,又去浏览其余网站。若是其余网站能够读取A网站的 Cookie,会发生什么?flask
很显然,若是 Cookie 包含隐私(好比存款总额),这些信息就会泄漏。更可怕的是,Cookie 每每用来保存用户的登陆状态,若是用户没有退出登陆,其余网站就能够冒充用户,随心所欲。由于浏览器同时还规定,提交表单不受同源政策的限制。浏览器
因而可知,"同源政策"是必需的,不然 Cookie 能够共享,互联网就毫无安全可言了。安全
同源政策规定,AJAX请求只能发给同源的网址,不然就报错。服务器
除了架设服务器代理(浏览器请求同源服务器,再由后者请求外部服务),有三种方法规避这个限制。cookie
JSONP WebSocket CORS
参考: ajax-异源请求jsonpsession
- 同源是指 https:// www.baidu.com:80 协议 域名 端口 三元素相同 - 不一样源cookie不能互相获取 - ajax不能异源请求(感受这是被扫黄时候误打了.)
附:
浏览器同源策略(same-origin policy)
csrf攻击防护核心点总结
django的cookie和session操做-7天免登陆
flask操做cookie&django的seesion和cookie机制