就治理用戶對信息的訪問而言,通過向用戶授予對存儲過程(而不是基礎(chǔ)表)的訪問權(quán)限,它們可以提供對特定數(shù)據(jù)的訪問。您可以將存儲過程看成是 SQL Server 視圖(假如您對它們熟悉的話),除非存儲過程接受用戶的輸入以動態(tài)更改顯示的數(shù)據(jù)。
存儲過程還可以幫助您解決代碼安全問題。它們可以防止某些類型的 SQL 插入攻擊 - 主要是一些使用運(yùn)算符(如 AND 或 OR)將命令附加到有效輸入?yún)?shù)值的攻擊。在應(yīng)用程序受到攻擊時,存儲過程還可以隱藏業(yè)務(wù)規(guī)則的實(shí)現(xiàn)。這對于將此類信息視為知識產(chǎn)權(quán)的公司非常重要。