我們是袋鼠雲數棧 UED 團隊,致力於打造優秀的一站式數據中台產品。我們始終保持工匠精神,探索前端道路,為社區積累並傳播經驗價值。 本文作者:空山 什麼是沙箱 沙箱即 SandBox,它是一種安全機制,用於嚴格控制訪問資源。通過在程式中創建一個獨立的運行環境,把一些來源不可信、具有破壞力或者又是無法 ...
我們是袋鼠雲數棧 UED 團隊,致力於打造優秀的一站式數據中台產品。我們始終保持工匠精神,探索前端道路,為社區積累並傳播經驗價值。
本文作者:空山
什麼是沙箱
沙箱即 SandBox,它是一種安全機制,用於嚴格控制訪問資源。通過在程式中創建一個獨立的運行環境,把一些來源不可信、具有破壞力或者又是無法判定的惡意程式使其在該環境下運行,隔離了對外部程式的影響,這樣即使發生了錯誤或者安全問題都不會影響到外面。
我們根據實現的方案不同, SandBox可以分為兩種模式:
- 單實例模式:全局只存在一個實例,直接代理原生的
window
對象,記錄每個沙箱內window
對象上的增刪改等操作,激活某個沙箱時恢覆上一次失活時的狀態,失活時恢複原來window
的狀態。 - 多實例模式:代理一個全新的
window
對象,所有的更改基於這個全新的對象,多個實例之間互不影響。
沙箱的應用場景
基於上面