自 SQL Server 7.0 版本起,角色 概念取代舊版本的「群組」,成為權限管理的核心單位。管理員將用戶歸入特定角色,僅需對角色配置權限,即可批量套用至所有成員,大幅降低管理負擔。SQL Server 提供兩大角色類別:伺服器角色 與 資料庫角色,分別對應不同管理層級。
伺服器角色依據 SQL Server 管理任務與重要性,將具備管理職能的用戶分組,各組權限預先定義且不可修改。其作用範圍涵蓋整個伺服器實例。例如 sysadmin 角色擁有執行任意管理操作的最高權限,任何嘗試修改其權限的操作均會失敗——這與資料庫角色可自訂權限形成鮮明對比。
SQL Server 內建 7 種預定義伺服器角色,詳細權限對照表如下:

實務中常需將特定資料庫權限授予多個用戶,但這些用戶可能隸屬不同 NT 群組,或管理員無 NT 帳號管理權限。此時資料庫角色發揮關鍵作用:在資料庫內建立角色,將需求一致的用戶歸入同一角色,即可實現資料庫專屬的分級管理與存取授權。一個用戶甚至可同時隸屬同一資料庫的多個角色,極大提升彈性。
SQL Server 提供兩類資料庫角色:
db_ddladmin 角色,即授予其建立與刪除資料庫物件(表、視圖、存儲過程)的權限。預定義資料庫角色權限對照表:
