Django為每個(gè)表自動(dòng)生成了id字段,但這個(gè)問題跟Django聯(lián)系不大。假設(shè)有一個(gè)Article表,包含主鍵,那么我在url訪問時(shí)直接使用該表的主鍵id,從安全性和性能方面考慮,這樣好嗎?比如說,Article表中有一條記錄,id為10051,而網(wǎng)址http://example.com/article/10051來顯示該文章。這樣做能方便用戶訪問,因?yàn)橹滥硞€(gè)文章的id,可以猜測其他文章的id來訪問不同文章,但是直接把主鍵暴露在url中,會(huì)不會(huì)讓黑客很容易能猜到數(shù)據(jù)庫的結(jié)構(gòu)從而引起安全方面的問題。這樣的應(yīng)用場景,有沒有什么要注意的或者一般方案呢?
2 回答

DIEA
TA貢獻(xiàn)1820條經(jīng)驗(yàn) 獲得超3個(gè)贊
并沒有什么不妥的地方。但是要考慮場景。比如電商系統(tǒng)
中,如果查看訂單號(hào),把自增主鍵暴漏了,那無疑是暴露了平臺(tái)的銷售情況,給競爭對(duì)手來說無疑是絕好的資料。但是至于安全方面卻沒有什么值得注意的地方,無非還是防止注入什么的。再比如多用戶博客系統(tǒng),暴漏id那就無疑暴漏了平臺(tái)的總注冊(cè)用戶數(shù)、總文章數(shù)、總發(fā)帖、評(píng)論回復(fù)數(shù)等。同樣也對(duì)安全沒有什么影響。
添加回答
舉報(bào)
0/150
提交
取消