所谓"同源"指的是"三个相同":

1.协议相同
2.域名相同
3.端口相同

当着三个地方相同才算同源

例如:http://www.example.com:8888/dir/page.html

协议是http://
域名是www.example.com
端口是8888

采用同源策略的目的:是为了保证用户信息的安全,防止恶意的网站窃取数据。设想这样一种情况:A网站是一家银行,用户登录以后,又去浏览其他网站。

如果其他网站可以读取A网站的 Cookie,会发生什么?如果 Cookie包含隐私(比如存款总额),这些信息就会泄漏。更可怕的是,Cookie 往往用来保存用

户的登录状态,如果用户没有退出登录,其他网站就可以冒充用户,为所欲为。因为浏览器同时还规定,提交表单不受同源政策的限制。由此可见,"同源政

策"是必需的,否则Cookie 可以共享,互联网就毫无安全可言了

缺点:如果不是同源

(1)Cookie、LocalStorage和IndexDB 无法读取
(2)DOM无法获得
(3)AJAX请求不能发送

Cookie的作用域:

Cookie有两个很重要的属性:Domain和Path,用来指示此Cookie的作用域:

  Domain告诉浏览器当前要添加的Cookie的域名归属,如果没有明确指明则默认为当前域名,比如通过访问www.vinceruan.info添加的Cookie的域名默认就是www.vinceruan.info,通过访问blog.vinceruan.info所生成的Cookie的域名就是blog.vinceruan.info

  Path告诉浏览器当前要添加的Cookie的路径归属,如果没有明确指明则默认为当前路径,比如通过访问www.vinceruan.info/java/hotspot.html添加的Cookie的默认路径就是/java/,通过blog.vinceruan.info/java/hotspot.html生成的Cookie的路径也是/java/

浏览器提交的Cookie需要满足以下两点:

1.当前域名或者父域名下的Cookie;
2.当前路径或父路径下的Cookie

要满足以上两个条件的Cookie才会被提交,例如:

当访问blog.vinceruan.info时

这里需要注意的是:在浏览器看来.

www.vinceruan.info不是blog.vinceruan.info的父域名,而vinceruan.info才是blog.vinceruan.info的父域名,

www.vinceruan.info也算是一个二级域名

这点如果你提交过域名到DNS服务器商的应该会知道,一般我们需要显式提交www.vinceruan.info和vinceruan.info, 否则www.vinceruan.info==vinceruan.info是不成立的

所以如果我们需要在所有二级域名下共享islogin=1的Cookie,用java代码如下:

如果要在所有的二级域名下的/java/路径下共享silogin=1的Cookie,用java代码如下:

转载于:https://www.cnblogs.com/liaojie970/p/7606168.html

浏览器同源策略及Cookie的作用域相关推荐

  1. 服务器安全:浏览器同源策略与跨域请求、XSS攻击原理及防御策略、如何防御CSRF攻击

    主要包括 浏览器同源策略与跨域请求 XSS攻击原理及防御策略 如何使用SpringSecurity防御CSRF攻击 CC/DDOS攻击与流量攻击 什么是SSL TLS HTTPS? 一.浏览器的同源策 ...

  2. 程序员应对浏览器同源策略的姿势

    同源策略 浏览器最基本的安全规范--同源策略(Same-Origin Policy).所谓同源是指域名.协议.端口相同.不同源的浏览器脚本(javascript.ActionScript.canvas ...

  3. gorilla websocket无法跨域_聊聊浏览器同源策略与跨域方案详解

    开发出高性能的 Web 应用固然重要,但安全问题也不容小觑.本文我们继续以 HTTP 为线索,展开来讲一讲浏览器安全相关的同源策略. 浏览器的同源策略(Same Origin Policy) 源(Or ...

  4. 浏览器同源策略,及跨域解决方案

    原文链接:浏览器同源策略,及跨域解决方案 一.Origin(源) 源由下面三个部分组成: 域名 端口 协议 两个 URL ,只有这三个都相同的情况下,才可以称为同源. 下来就以 "www.e ...

  5. 十秒解决开发环境跨域问题——取消浏览器同源策略

    解决开发环境跨域问题方法有很多,设置代理什么的略显繁琐:接下来介绍一个十秒解决开发环境跨域问题的方法--取消浏览器同源策,解决所有跨域问题,以谷歌浏览器为例. 一:Windows ①:关闭浏览器 ②: ...

  6. 一文搞懂浏览器同源策略

    摘要:同源策略就是指必须在同一个协议,域名,端口号下,而且三者必须一致的. 本文会从以下几个方面讲述同源策略: 第一点 what:什么是同源策略 第二点 why:为什么需要同源策略 第三点 how:如 ...

  7. 什么是浏览器同源策略?

    什么是浏览器同源策略? 协议名.IP地址.端口号一样即为同源,这三者有一个不同就会产生跨域问题.

  8. 浏览器同源策略及跨域的解决方法

    浏览器同源策略及跨域的解决方法 参考文章: (1)浏览器同源策略及跨域的解决方法 (2)https://www.cnblogs.com/laixiangran/p/9064769.html 备忘一下.

  9. Ajax→异步的JavaScript和XML、HTTP请求响应、Ajax简介同步异步、XMLHttpRequest类的方法及属性、原生Ajax、Koa实现Ajax、接口文档、浏览器同源策略、反向代理

    浏览器服务器 HTTP请求响应 数据库后端语言 Ajax简介同步异步 Koa前端框架 XMLHttpRequest类的方法及属性 原生Ajax Koa实现Ajax JSON DOM 接口文档 浏览器同 ...

最新文章

  1. JavaScript数据结构与算法——队列详解(下)
  2. ABAP help click F1
  3. MySql某一列累计查询
  4. 最长配对(51Nod-2494)
  5. numpy矩阵乘法_NumPy矩阵乘法
  6. Leetcode 742.二叉树最近的叶子结点
  7. 什么是数据建模_数据建模是什么意思
  8. 雷达原理-雷达接收机
  9. 昆仑通泰高级教程_2014-昆仑通态-高级教程.pdf
  10. oracle中栓锁,特定的闩锁和互斥场景
  11. 从零开始搭二维激光SLAM --- 基于GMapping的栅格地图的构建
  12. Java集合的接口和类层次结构图以及代码示例
  13. ZT中国制造的神奇硬盘
  14. basler相机的调试与配置以及多相机同时运行(完整版)
  15. Linux下的目录树
  16. 微信小程序----性别选择,并实现数据渲染
  17. 又又又被段永平加仓,是时候抄底腾讯了吗?
  18. 考虑阶梯式碳交易机制与电制氢的综合能源系统热电优化(完美复现)matlab-yalmip-cplex/gurobi
  19. Java 中 10 大简单的性能优化
  20. 半小时学习最小二乘法

热门文章

  1. 中国移动领取买卖将在2016年破万亿
  2. Two ways to assign values to member variables
  3. 直播系统搭建关键步骤与要点!
  4. 深入Garbage First垃圾收集器(三)G1中的垃圾收集
  5. 个人信息安全 不能止于“打补丁”
  6. Guice系列之用户指南(五)
  7. Apache 配置支持HTTPS的SSL证书
  8. JavaScript 自定义对象
  9. 程序员面试什么最重要
  10. 最好用的20个数据可视化工具(一)