javascript - 如何保證數(shù)據(jù)庫里的信息安全?
問題描述
沒接觸過網(wǎng)絡(luò)安全,請教各位大佬,把用戶信息放到數(shù)據(jù)庫后怎么保證安全?
問題解答
回答1:題主你這個(gè)問題問得好大... 從以下幾個(gè)方面著手吧:
數(shù)據(jù)庫權(quán)限:連數(shù)據(jù)庫不要老用root,給web應(yīng)用單獨(dú)開帳號,最小化權(quán)限
數(shù)據(jù)庫密碼:不要弱密碼,盡量搞個(gè)隨機(jī)生成的16位以上的密碼
web服務(wù)器:同數(shù)據(jù)庫,密碼盡量復(fù)雜化,盡量不要直接用root帳號,單獨(dú)開帳號,只有在必須需要的時(shí)候才用root
web應(yīng)用:
盡量選一個(gè)好點(diǎn)的DB庫或ORM庫,使用參數(shù)化的SQL查詢,不要直接把參數(shù)拼在SQL里面,防止SQL注入
用戶(包括后臺管理用戶)的密碼信息不要直接存儲,應(yīng)加鹽hash后再存儲
如果可以,盡量使用HTTPS
渲染HTML的時(shí)候,盡量使用編碼后再輸出,防止XSS
非得輸出一段用戶控制的富文本HTML的時(shí)候,使用htmlpurifier這樣的過濾器,防止XSS
遵循HTTP動詞語義,增刪改類操作使用POST/DELETE/PUT,并增加csrf_token,防止CSRF攻擊
暫時(shí)想到這么多,web安全還有很多要注意的點(diǎn),建議LZ直接請個(gè)安全顧問吧。
回答2:首先,你的前端以及后端代碼要保證其安全性,不能出現(xiàn)XXS或者SQL注入等攻擊漏洞,再者就是數(shù)據(jù)庫服務(wù)器與Web服務(wù)器進(jìn)行分離,這樣即可以提高一部分的安全性能也可以使網(wǎng)站提升效率。另外用戶信息中的密碼最好全部通過特定的加密方式進(jìn)行加密處理之后再存儲到數(shù)據(jù)庫,保證其被盜取之后盜取者也很難知道其真實(shí)密碼,望采納!
相關(guān)文章:
1. php - mysql 模糊搜索問題2. javascript - 我的站點(diǎn)貌似被別人克隆了, google 搜索特定文章,除了域名不一樣,其他的都一樣,如何解決?3. javascript - 在 vue里面用import引入js文件,結(jié)果為undefined4. 求救一下,用新版的phpstudy,數(shù)據(jù)庫過段時(shí)間會消失是什么情況?5. python沒入門,請教一個(gè)問題6. html - 爬蟲時(shí)出現(xiàn)“DNS lookup failed”,打開網(wǎng)頁卻沒問題,這是什么情況?7. php如何獲取訪問者路由器的mac地址8. php - 微信開發(fā)驗(yàn)證服務(wù)器有效性9. javascript - js setTimeout在雙重for循環(huán)中如何使用?10. 小程序怎么加外鏈,語句怎么寫!求救新手,開文檔沒發(fā)現(xiàn)
