瀏覽器本地儲存(localStorage)用來保存客戶 ERP 的網址、介面主題或匯入設定,確實很方便,重新開啟網頁後資料還在,不必每次重新輸入。不過,若問「瀏覽器本地儲存安全嗎?」答案不能只說安全或不安全,而是要看儲存的是什麼資料。它適合保存偏好設定,卻不適合拿來當作真正的資料庫,更不應直接保存管理員密碼、客戶名單或完整交易紀錄。
localStorage 的安全限制
localStorage 是依照「網域來源」隔離的。例如 https://example.com 通常無法直接讀取另一個網域的儲存資料;但只要網站本身出現跨網站腳本攻擊(XSS),攻擊者就可能利用網頁中的惡意 JavaScript 讀取 localStorage 內容。換句話說,資料不是放在公開網路上,卻也不是加密保險箱。
此外,資料會留在使用者的瀏覽器與個人電腦中。共用電腦、員工離職未清除帳號、瀏覽器同步功能,甚至電腦中毒,都可能讓資料被其他人取得。特別是將資料匯出成 JSON 備份檔後,檔案可能出現在下載資料夾、雲端同步目錄或 USB 隨身碟中,風險反而擴大。
ERP 系統不宜只依賴本地儲存
若目前的銷售助理工具把所有資料改成 localStorage,使用者清除瀏覽資料、切換瀏覽器或更換電腦後,資料可能看似「消失」。這不是資料真的不存在,而是它只保存在原本的瀏覽器環境裡。對客戶 ERP 來說,這種方式也不利於多人協作、權限控管與異常追蹤。
更需要立即修正的是預設密碼,例如 admin123 與 employee2024。這類密碼公開後幾乎等於沒有防護,應改成首次登入強制更換,並採用雜湊加鹽方式儲存,絕對不要把明文密碼放進 localStorage 或 JSON 備份。
比較穩妥的做法
- localStorage 只保存主題、網址偏好等低敏感度設定。
- 客戶資料與登入狀態交由後端資料庫管理,使用 HTTPS 傳輸。
- 使用短效期 Session 或安全 Cookie,設定
HttpOnly、Secure與SameSite。 - JSON 備份檔加入權限控管,必要時加密並限制下載。
- 對網址輸入、檔案匯入內容及管理員操作進行驗證與記錄。
- 定期清理瀏覽器中的舊資料,並測試備份是否真的能成功還原。
所以,瀏覽器本地儲存不是完全不能用,而是要放對資料。把它當成「使用者設定暫存區」很實際;若把它當成 ERP 的正式資料庫,甚至用來保存密碼,那就相當危險了。

評論(3)
原來 localStorage 不能拿來存密碼,之前還差點誤用😰
確實,共用電腦的時候最擔心這種資料洩漏的問題。
把本地儲存當成設定暫存區就好,重要資料還是得靠後端資料庫比較穩。