軟體工程師的小事:到底要不要 Close

問與答:使用 StoredProc 有資訊安全疑慮 | 2019 鐵人賽

論點

使用 StoredProc 會讓產品交付後
客戶很容易明確的知道資料庫存取邏輯
當資料庫被駭客攻擊的時候,也很容易知道該如何下手

客戶端開發人員會很明顯知道 spAddProduct 使用來建立商品資料
駭客很輕易的知道 sp
UpdateProductSellPrice 是用來修改商品售價的

對用戶端開發人員而言,大部分的產品皆會附上應用程式的原始程式碼
就算今天不使用 StoredProc 撰寫,還是可以從原始程式碼中取得資料庫查詢

就安全性而言,資料庫被駭客進入就是件嚴重的事情
若今天駭客取得的資料庫帳號權限為該資料庫的擁有者 db_owner
相信要破壞資料表內容的話不需要去呼叫 StoredProc 這麼麻煩

應著重於如何讓可能會被外洩的資料庫帳號權限越小越好
當然:使用 StoredProc 進行限制會是其中一個方法

留言