我正在構建一個 CMS,vue 3并想知道使用全域存盤store.store.auth = false/true是否是一種安全的方式來呈現應該只有經過身份驗證的用戶才能看到的組件。它是這樣的:
- 用戶在登錄表單中輸入憑據
- 憑據通過 HTTP 請求發送到后端并由
laravel sanctum - 回應到達前端設定
store.store.auth = true - 應該只有經過身份驗證的用戶才能看到的組件和路由通過
v-if
這是一種安全的方法還是可以改進?
uj5u.com熱心網友回復:
在這種情況下,安全性幾乎完全取決于后端。
圣所不使用任何種類的代幣。相反,Sanctum 使用 Laravel 內置的基于 cookie 的會話身份驗證服務。通常,Sanctum 使用 Laravel 的 Web 身份驗證保護來完成此操作。這提供了 CSRF 保護、會話身份驗證以及防止身份驗證憑據通過 XSS 泄漏的好處。
源代碼
似乎sanctum處理了身份驗證,所以只要
store.store.auth值保持最新,并且 API 執行它自己的身份驗證和授權,你應該沒問題。
因為通過 js 源代碼可以看到整個應用程式,所以有人可能會修改他們不應該看到的狀態和顯示選項。這在 SPA 中真的很難防止,這就是為什么后端正確處理這一點至關重要。您可以使用代碼拆分來防止加載需要身份驗證的應用程式部分,但這不是安全措施。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/440685.html
