2013-02-20 25 views
3

Greasemonkey Firefox是否在它自己的沙箱/圖層中運行JS,或者它在運行的頁面上是否需要全局JavaScript?Greasemonkey如何與NoScript等javascript攔截器進行交互?

那麼我的意思是,如果我有另一個像NoScript的插件阻塞頁面的JS,會使用Greasemonkey導致頁面的JS然後被解除阻塞?或者,該頁面的JavaScript是否會被阻止,並且Greasemonkey的JavaScript只是在它自己的層中運行,並保持一切安全?我確實給了它一個快速測試和JS頁面似乎被阻止,所以可能罰款。但我不完全確定它是如何掛鉤到網站/瀏覽器JS。

回答

4

是,約Greasemonkey的是,它可以在頁面上運行腳本的好東西一個特權用戶腳本代碼,即使該頁面禁用JavaScript。並且,不,它不會解除頁面的JS。

除非你使用Script Injection,Greasemonkey腳本總是在一個單獨的範圍操作 - 這是不是關閉NoScript的
此外,通用腳本將取決於有效@grant settings沙箱運行。有關更多信息,請參閱"Why is window (and unsafeWindow) not the same from a userscript as from a tag?"

1

我認爲http://wiki.greasespot.net/Security應該回答你所有的問題。具體來說,

[火狐1.5更新]用於隔離不安全的內容頁

+0

實際上,該頁面已經過時了。從GM 1.0開始,Greasemonkey並不總是使用沙箱。 – 2013-02-20 22:48:17