首页IT科技同源策略详解(什么是同源策略)

同源策略详解(什么是同源策略)

时间2025-09-19 08:13:12分类IT科技浏览6637
导读:一.什么是同源策略...

一.什么是同源策略

同源策略                ,它是由Netscape提出的一个著名的安全策略                        ,现在所有的可支持javascript的浏览器都会使用这个策略                。

为什么需要同源策略        ,这里举个例子:

假设现在没有同源策略            ,会发生什么事情呢?大家知道                        ,JavaScript可以做很多东西            ,比如:读取/修改网页中某个值                        。恩        ,你现在打开了浏览器                        ,在一

个tab窗口中打开了银行网站                ,在另外一个tab窗口中打开了一个恶意网站    ,而那个恶意网站挂了一个的专门修改银行信息的JavaScript                        ,当你访问

这个恶意网站并且执行它JavaScript时                    ,你的银行页面就会被这个JavaScript修改,后果会非常严重!而同源策略就为了防止这种事情发生.

比如说                    ,浏览器的两个tab页中分别打开了http://www.baidu.com/index.html和http:

//www.google.com/index.html                        ,其中    ,JavaScript1和JavaScript3是属于百度的脚本                ,而

JavaScript2是属于谷歌的脚本                        ,当浏览器的tab1要运行一个脚本时        ,便会进行同源检查            ,只有和www.baidu.com同源的脚本才能被执

行                        ,所谓同源            ,就是指域名                、协议                        、端口相同        。所以        ,tab1只能执行JavaScript1和JavaScript3脚本                        ,而JavaScript2不能

执行                ,从而防止其他网页对本网页的非法篡改            。

二.Selenium Server为什么以这种代理服务器的形式存在

上面说了同源策略    ,那同源策略的Selenium Server有什么关系呢??呵呵                        ,上一篇说过                    ,Selenium Core是一堆JS函数的集合,它是我们操作浏览器的基础                        。当存在同源策略时                    ,便出现一些问题.

因为Selenium Core的JS脚本的“源                ”是localhost                        ,所以浏览器会阻止Selenium

Core的JS脚本在测试页面上执行    ,这就是为什么在本系列第一篇中说                ,如果只使用Selenium Core进行测试                        ,需要把Selenium

Core安装到远程服务器上            。

为了解决上面这个问题        ,Selenium RC中的Selenium Server就以代理服务器的形式出现了.

Selenium Server以代理的形式存在            ,通过修改WebSite的源信息                        ,从而达到欺骗浏览器的目的            ,就这样        ,Selenium

RC就轻松绕过了同源策略        。在上图中                        ,浏览器会认为WebSite和Selenium Core来自同一个“源                        ”----代理服务器!

转自:http://hi.baidu.com/legend_swallow/blog/item/e83494bb76d8890419d81fb3.html

声明:本站所有文章                ,如无特殊说明或标注    ,均为本站原创发布                        。任何个人或组织                        ,在未征得本站同意时                    ,禁止复制        、盗用            、采集                        、发布本站内容到任何网站            、书籍等各类媒体平台                。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理    。

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
织梦如何添加会员系统(织梦调用全站指定属性的文章方法)