1.安全機制
1.1安全驗證方式
安全驗證方式即用戶登錄,這是SQL Server安全實施安全性的第一步。
SQL Server提供2種驗證模式:Window身份驗證模式和混合模式。
Window身份驗證模式:SQL Server把登錄驗證的任務交給了Windows操作系統,用戶要通過Windows的驗證,就可以連接到SQL Server服務器。
混合模式:該模式下即可使用Window身份驗證和SQL Server身份驗證。
設置驗證模式
服務器名稱-》(右擊)屬性-》設置驗證方式-》重啓SQL Server
1.2創建Window登錄賬戶
開始-》控制面板-》管理工具-》計算機管理-》本地用戶和組-》用戶-》新建
1.3創建SQL Server登錄賬戶
安全性-》登錄名-》(右擊)新建登錄名-》
選擇數據庫角色成員身份和數據庫用戶
1.4刪除登錄賬戶的登錄名
DROP LOGIN login_name
在SMSS中直接刪除
2.角色與權限
按照角色的作用範圍,可以分爲4類:固定服務器角色、數據庫角色、自定義數據庫角色和應用程序角色。
固定服務器角色
固定的數據庫角色
自定義數據庫角色
將登陸指派到角色
服務器下-》登錄名-》目標登錄名-》屬性-》服務器角色-》複選框中勾選服務器角色
如果要執行庫角色,代課“用戶映射”選項
將角色指派到多個登錄賬戶
服務器下-》安全性-》服務器角色-》目標服務器角色-》屬性-》添加成員
數據權限管理
根據是否系統預定義,可以把權限劃分爲預定義權限和自定義權限;按照權限與特定對象的關係,可以把權限劃分爲針對所有對象的權限和針對特殊對象的權限。
預定義權限和自定義權限
固定服務器角色和固定數據庫角色屬於預定義權限。
自定義權限需要通過授權或者繼承纔可以得到的權限,大多數安全主體都需要經過授權才能獲得指定對象的使用權限。
所有對象和特殊對象的權限
所有對象權限可以針對SQL Server中所有數據庫對象,CONTROL權限可用於所有對象。
特殊對象權限是指那些只能在指定對象上執行的權限,例如SELECT可用於表或者視圖,但是不可用於存儲過程1;而EXEC只能用於存儲過程,而不能用於表或者視圖。
針對表或視圖,數據用戶在操作這些對象之前必須擁有相應的操作權限,可以授予數據庫用戶的針對表或視圖的權限有INSERT、UPDATE、DELETE、SELECT和REFERENCES 五種。
用戶只有獲得了針對某種對象特定的權限後,才能對該對象執行相應的操作不同的對象有不同的權限,權限管理包括下面的內容:授予權限、拒絕權限和撤銷權限。
1授予權限
GRANT { ALL [ PRIVILEGES ] }
| permission [ ( column [ ,...n ] ) ] [ ,...n ]
[ ON [ class :: ] securable ] TO principal [ ,...n ]
[ WITH GRANT OPTION ] [ AS principal ]
2.拒絕權限
DENY { ALL [ PRIVILEGES ] }
| permission [ ( column [ ,...n ] ) ] [ ,...n ]
[ ON [ class :: ] securable ] TO principal [ ,...n ]
[ CASCADE ] [ AS principal ]
3.撤銷權限
REVOKE [ GRANT OPTION FOR ]
{
[ ALL [ PRIVILEGES ]
| permission [ ( column [ ,...n ] ) ] [ ,...n ]
}
[ ON [ class :: ] securable ]
{ TO | FROM } principal [ ,...n ]
[ CASCADE ] [ AS principal ]