2011-10-10 131 views
2

我需要拒絕更改document.domain。再說了,如果我在foo.boo.com不允許更改document.domain值

Object.defineProperty(document, 'domain', { 
    get: function() { 
     return 'foo.boo.com'; 
    } 
}); 

運行該代碼,然後纔有可能設置document.domainboo.com?我問,因爲我想否認更改document.domain不可信的代碼。

+3

我敢肯定,你必須在這個零控制。 – ceejayoz

+0

@ceejayoz,究竟是什麼? – Polar

+0

通過瀏覽器是否可以設置「document.domain」。 – ceejayoz

回答

1

您提出的代碼似乎根本不起作用。 Safari瀏覽器:

它未能防止在Chrome的document.domain修改的演示:

enter image description here

+0

似乎你的瀏覽器不支持它。在最新的FF中進行測試。 – Polar

+0

這是Safari的最新版本。 – ceejayoz

+1

@Jared,用'alert'替換'console.log',你會得到相同的行爲(除了更煩人) –