javascript - 如何保證數(shù)據(jù)庫里的信息安全?
問題描述
沒接觸過網(wǎng)絡(luò)安全,請教各位大佬,把用戶信息放到數(shù)據(jù)庫后怎么保證安全?
問題解答
回答1:題主你這個問題問得好大... 從以下幾個方面著手吧:
數(shù)據(jù)庫權(quán)限:連數(shù)據(jù)庫不要老用root,給web應(yīng)用單獨開帳號,最小化權(quán)限
數(shù)據(jù)庫密碼:不要弱密碼,盡量搞個隨機生成的16位以上的密碼
web服務(wù)器:同數(shù)據(jù)庫,密碼盡量復(fù)雜化,盡量不要直接用root帳號,單獨開帳號,只有在必須需要的時候才用root
web應(yīng)用:
盡量選一個好點的DB庫或ORM庫,使用參數(shù)化的SQL查詢,不要直接把參數(shù)拼在SQL里面,防止SQL注入
用戶(包括后臺管理用戶)的密碼信息不要直接存儲,應(yīng)加鹽hash后再存儲
如果可以,盡量使用HTTPS
渲染HTML的時候,盡量使用編碼后再輸出,防止XSS
非得輸出一段用戶控制的富文本HTML的時候,使用htmlpurifier這樣的過濾器,防止XSS
遵循HTTP動詞語義,增刪改類操作使用POST/DELETE/PUT,并增加csrf_token,防止CSRF攻擊
暫時想到這么多,web安全還有很多要注意的點,建議LZ直接請個安全顧問吧。
回答2:首先,你的前端以及后端代碼要保證其安全性,不能出現(xiàn)XXS或者SQL注入等攻擊漏洞,再者就是數(shù)據(jù)庫服務(wù)器與Web服務(wù)器進行分離,這樣即可以提高一部分的安全性能也可以使網(wǎng)站提升效率。另外用戶信息中的密碼最好全部通過特定的加密方式進行加密處理之后再存儲到數(shù)據(jù)庫,保證其被盜取之后盜取者也很難知道其真實密碼,望采納!
相關(guān)文章:
1. javascript - immutable配合react提升性能?2. javascript - sublime快鍵鍵問題3. css - 寫頁面遇到個布局問題,求大佬們幫解答,在線等,急!~4. Apache 已經(jīng)把網(wǎng)站根目錄的改為allow from all了,但是服務(wù)器還是不能訪問?5. javascript - 移動端上不能實現(xiàn)拖拽布局嗎?6. 實現(xiàn)bing搜索工具urlAPI提交7. vue.js - Vue 如何像Angular.js watch 一樣監(jiān)聽數(shù)據(jù)變化8. phpstudy8.1支持win11系統(tǒng)嗎?9. 配置Apache時,添加對PHP的支持時語法錯誤10. javascript - nodejs關(guān)于進程間發(fā)送句柄的一點疑問

網(wǎng)公網(wǎng)安備