理論上, 一般的操作(select/insert/update/delete),似乎開 reader + writer 就ok了, 需要開到 db_owner, 可以避免萬一被 SQL Inject 後, 最糟的情況是 data 的部份被刪除和被偷走...
資料庫層級角色名稱+說明:
-----------------------------
db_owner 固定資料庫角色的成員可以在資料庫上執行所有的組態和維護活動,也可以卸除資料庫。
db_securityadmin 固定資料庫角色的成員可以修改角色成員資格及管理權限。將主體加入這個角色可能會產生不必要的權限擴大。
db_accessadmin 固定資料庫角色的成員可以針對 Windows 登入、Windows 群組及 SQL Server 登入加入或移除資料庫的存取權。
db_backupoperator 固定資料庫角色的成員可以備份資料庫。
db_ddladmin 固定資料庫角色的成員可在資料庫中執行任何「資料定義語言」(DDL) 的命令。
db_datawriter 固定資料庫角色的成員可以加入、刪除或變更所有使用者資料表中的資料。
db_datareader 固定資料庫角色的成員可以從所有使用者資料表讀取所有資料。
資料來源: 資料庫層級角色
http://msdn.microsoft.com/zh-tw/library/ms189121.aspx
沒有留言:
張貼留言