SQL Server 2012 安全管理



1 服務器安全管理

1.1 兩種身份驗證方式

    用windows身份驗證是根據用戶的windows身份權限來進行身份驗證,這種方式要直接一些,只要windows登錄密碼正確就可以訪問數據庫,sql不判斷sa密碼。但是在遠程連接的時候會因NTML驗證的緣故,無法登陸。
    用混合身份驗證模式,也就是基於Windows身份驗證和SQL Server身份混合驗證。這個連接不僅包括遠程用戶還包括本地用戶,當遠程用戶訪問時由於未通過windows認證,而進行sql server認證,從而使得遠程用戶也可以登錄。

1.2 固定服務器角色

在這裏插入圖片描述

1.3 Windows身份驗證模式和混合模式的切換
  1. 連接到SQL Server數據庫引擎示例,右擊,選擇“屬性”
    在這裏插入圖片描述
  2. 進入“服務器屬性”界面
    在這裏插入圖片描述
  3. 在選擇頁中選擇“安全性”,在“服務器身份驗證”中選擇“SQL Server和Windows身份驗證模式”,並點擊確定
    在這裏插入圖片描述
  4. 彈出提示框要求重啓SQL Server
    在這裏插入圖片描述
  5. 展開數據庫實例,選擇“安全性”,打開“登錄名”,找到sa登錄名
    在這裏插入圖片描述
  6. 右擊,選擇屬性,進入屬性對話框
    在這裏插入圖片描述
  7. 取消勾選實施強制密碼策略,設置sa賬戶的登錄密碼
    在這裏插入圖片描述
  8. 在選擇頁中選擇“狀態”,確認確認選擇登錄爲已啓用
    在這裏插入圖片描述
  9. 退出SSMS,重啓SQL Server示例服務
    在這裏插入圖片描述
  10. 使用SQL Server身份登錄,身份驗證選擇SQL Server身份驗證,登錄名爲sa,密碼爲剛纔設定的密碼,點擊連接
    在這裏插入圖片描述
  11. 登錄成功後,可以見到服務器示例右邊的登錄爲SQL Server的sa登錄
    在這裏插入圖片描述

1.4 創建Windows身份驗證的登錄名
創建Windows用戶
  1. 右擊我的電腦,選擇“管理”
    在這裏插入圖片描述
  2. 用戶在計算機管理窗口選擇“本地用戶和組”,再選擇“用戶”
    在這裏插入圖片描述
  3. 右擊“用戶”,選擇“新用戶”
    在這裏插入圖片描述
  4. 在新用戶對話框中輸入用戶名,密碼,取消勾選“用戶下次登錄時須更改密碼”
    在這裏插入圖片描述
  5. 點擊創建,然後關閉對話框,在面板中可以見到新創建的Windows用戶
    在這裏插入圖片描述
使用SSMS工具創建Windows身份驗證的登錄名
  1. 展開數據庫實例,選擇“安全性”,再選擇“登錄名”
    在這裏插入圖片描述
  2. 右擊“登錄名”,選擇“新建登錄名”
    在這裏插入圖片描述
  3. 在登錄名新建對話框中點擊“搜索按鈕”
    在這裏插入圖片描述
  4. 彈出“選擇用戶和組”對話框,點擊“高級”
    在這裏插入圖片描述
  5. 進入高級模式後,點擊“立即查找”,計算機內所有用戶都會展示在下方窗格中
    在這裏插入圖片描述
  6. 選擇需要創建登錄名的Windows用戶,點擊確定返回,再點擊確定,回到創建登錄名窗口
    在這裏插入圖片描述
  7. 點擊“確定”,完成Windows賬戶登錄名創建
    在這裏插入圖片描述
  8. 使用Windows用戶作爲登錄名,需要使用該賬戶登錄電腦,然後SSMS會自動選擇當前Windows用戶進行登錄
    在這裏插入圖片描述
使用SQL方式創建Windows身份驗證的登錄名

語法格式:

CREATE LOGIN <[計算機名\用戶名]>
FROM WINDOWS
WITH DEFAULT_DATABASE=<默認數據庫>

使用示例:

CREATE LOGIN [DESKTOP-LJ2ALIV\winuser]
FROM WINDOWS
WITH DEFAULT_DATABASE=master

1.5 創建SQL Server身份驗證的登錄名
使用SSMS工具創建SQL Server身份驗證的登錄名
  1. 展開數據庫實例,選擇“安全性”,再選擇“登錄名”
    在這裏插入圖片描述
  2. 右擊“登錄名”,選擇“新建登錄名”
    在這裏插入圖片描述
  3. 勾選“SQL Server身份驗證”,在“登錄名”中輸入要創建的登錄名稱,取消勾選“強制實施密碼策略”(如果密碼符合策略要求,可不取消),輸入密碼
    在這裏插入圖片描述
  4. 完成後點擊“確定”,斷開當前連接,使用新創建的SQL登錄名進行連接
    在這裏插入圖片描述
    在這裏插入圖片描述
使用SQL方式創建SQL Server身份驗證的登錄名

語法格式:

CREATE LOGIN <SQL Server登錄名>
WITH PASSWORD=<密碼>,
DEFAULT_DATABASE=<默認數據庫>

使用示例:

CREATE LOGIN sqluser
WITH PASSWORD='123abc',
DEFAULT_DATABASE=master

1.6 配置登錄名服務器角色
  1. 使用新創建的SQL Server登錄名連接服務器
    在這裏插入圖片描述
  2. 執行創建數據庫命令,顯示沒有創建數據庫權限
    在這裏插入圖片描述
  3. 使用Windows管理員賬戶(或者sa賬戶)登錄,進入“安全性”,選擇“登錄名”,右擊剛纔的登錄名,選擇“服務器角色”選擇頁查看角色權限
    在這裏插入圖片描述
  4. 爲其添加dbcreateor權限,使其擁有創建數據庫的權限,點擊確定
    在這裏插入圖片描述
  5. 斷開連接,重新以剛纔的SQL Server登錄名進行登錄,執行創建數據庫命令
    在這裏插入圖片描述
  6. 創建成功,刷新數據庫可以見到縣創建的數據庫
    在這裏插入圖片描述

2 數據庫安全管理

2.1 固定數據庫角色

在這裏插入圖片描述

2.2 創建Windows驗證的數據庫用戶
使用SSMS工具創建Windows驗證的數據庫用戶
  1. 打開相應的數據庫,選擇“安全性”,再選擇“用戶”
    在這裏插入圖片描述
  2. 右擊“用戶”,選擇“新建用戶”
    在這裏插入圖片描述
  3. 彈出“數據庫用戶-新建”窗口,在“用戶類型”中選擇“Windows用戶”,用戶名右擊“…”按鈕,選擇對應的計算機用戶,登錄名右擊“…”按鈕,選擇服務器中對應的登錄名,點擊“確定”
    在這裏插入圖片描述
  4. 創建成功,使用該用戶名連接服務器可訪問該數據庫
    在這裏插入圖片描述
使用SQL方式創建Windows驗證的數據庫用戶

語法格式:

CREATE USER  [計算機名\用戶名]
FROM LOGIN [計算機名\登錄名]

使用示例:

CREATE USER  [DESKTOP-LJ2ALIV\winuser]
FROM LOGIN [DESKTOP-LJ2ALIV\winuser]

2.3 創建SQL Server驗證的數據庫用戶
使用SSMS工具創建SQL Server驗證的數據庫用戶
  1. 打開相應的數據庫,選擇“安全性”,再選擇“用戶”
    在這裏插入圖片描述
  2. 右擊“用戶”,選擇“新建用戶”
    在這裏插入圖片描述
  3. 彈出“數據庫用戶-新建”窗口,在“用戶類型”中選擇“帶登錄名的SQL用戶”,用戶名輸入相應的用戶名,登錄名右擊“…”按鈕,選擇服務器中對應的登錄名,點擊“確定”
    在這裏插入圖片描述
  4. 創建成功,使用該用戶名連接服務器可訪問該數據庫
    在這裏插入圖片描述
使用SQL方式創建SQL Server驗證的數據庫用戶

語法格式:

CREATE USER  用戶名
FROM LOGIN 登錄名

使用示例:

CREATE USER  sqluser
FROM LOGIN sqluser

2.4 數據庫角色的使用
  1. 使用前面創建的用戶名訪問數據庫,嘗試查詢student表中的數據,提示無SELECT權限
    在這裏插入圖片描述
  2. 以管理員用戶登錄數據庫,打開相應數據庫中的“安全性”,再打開角色,右擊“數據庫角色”,選擇“新建數據庫角色”
    在這裏插入圖片描述
  3. 彈出“數據庫角色-新建”窗口,輸入數據庫角色名稱
    在這裏插入圖片描述
  4. 在選擇頁中選擇“安全對象”,點擊“搜索”按鈕
    在這裏插入圖片描述
  5. 彈出“添加對象”窗口,選擇“特定類型的所有對象”,點擊進入“確定”,進入“選擇對象類型”窗口
    在這裏插入圖片描述
  6. 在窗口中選擇“表”,點擊“確定”返回
    在這裏插入圖片描述
  7. 在窗口安全對象中選中需要添加權限的表,在下方窗格找到“選擇”條項,勾選“授予”,點擊確定
    在這裏插入圖片描述
  8. 成功創建數據庫角色,在數據庫角色中可以找到該數據庫角色
    在這裏插入圖片描述
  9. 打開“安全性”,再打開“用戶”,右擊需要添加權限的用戶名,選擇屬性
    在這裏插入圖片描述
  10. 在“數據庫用戶”窗口的選擇頁選中成員身份,勾選創建的數據庫角色,點擊確定
    在這裏插入圖片描述
  11. 重新使用前面創建的用戶名訪問數據庫,嘗試查詢student表中的數據,查詢數據成功
    在這裏插入圖片描述

3 數據庫對象安全管理

使用SSMS工具完成對象權限設置
  1. 右擊相應的數據庫用戶,選擇“屬性”,打開數據庫用戶屬性面板
    在這裏插入圖片描述
  2. 在面板窗口的屬性頁中選擇“安全對象”,點擊“搜索”按鈕
    在這裏插入圖片描述
  3. 彈出“添加對象”窗口,選擇“特定類型的所有對象”,點擊進入“確定”,進入“選擇對象類型”窗口
    在這裏插入圖片描述
  4. 在窗口中選擇“表”,點擊“確定”返回
    在這裏插入圖片描述
  5. 在窗口中選中需要添加權限的表,在下方窗格找到“選擇”條項,勾選需要的權限管理,點擊確定
    在這裏插入圖片描述
  6. 完成對象級別權限設置,使用該用戶名訪問數據庫,可以檢驗權限設置的效果。
使用SQL方式完成對象權限設置

語法格式:

--授予權限
GRANT <權限列表> ON <視圖或數據表> TO <用戶名>
--拒絕權限
DENY <權限列表> ON <視圖或數據表> TO <用戶名>
--撤銷權限
REVOKE <權限列表> ON <視圖或數據表> FROM <用戶名>

使用示例:

--授予sqluser對student表的SELECT、UPDATE權限
GRANT SELECT,UPDATE ON student TO sqluser
--拒絕sqluser對student表的DELETE權限
DENY DELETE ON student TO sqluser
--撤銷sqluser對student表的UPDATE權限
REVOKE UPDATE ON student FROM sqluser



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章