SQL Server權限設置

    隨着網絡的不但發展、***技術的日益增長,針對於SQL Server數據庫的***也越來越多,很多企業的機密數據受到一定的威脅。如何多方便的加強SQL Server的安全性呢?


一、SQL Server的安全機制

    SQL Server的安全機制主要包括以下四個方面:

(1)客戶機的安全機制:用戶必須能夠登錄客戶機,然後使用應用程序或管理工具來訪問數據庫,對於Windows系統的客戶來說,主要涉及到操作系統的安全,主要是Windows賬號的安全


(2) 服務器的安全機制:用戶登錄服務器時,必須使用一個賬號和密碼,服務器會按照不同的身份驗證方式判斷這個賬號和密碼的正確性


(3) 數據庫的安全機制:任何能夠登錄到服務器的賬號和密碼都對應着一個默認的數據庫,SQL Server對數據庫級的權限管理採用的是“數據庫用戶”的概念


(4) 數據對象的安全機制:用戶通過前面三道防線才能訪問數據庫的數據對象(如表、視圖),常見的訪問權限包括數據的查詢、更新、插入、刪除



二、登錄權限設置

    SQL Server有兩種身份驗證模式:

Windows身份驗證模式:使用操作系統中Windows用戶和密碼登錄,SQL Server不要求提供密碼,也不執行身份驗證。Windows身份驗證使用了Kerberos安全協議,比SQL Server身份驗證更安全。適用於局域網內部(如AD域)訪問數據庫的情況

SQL Server和Windows身份驗證模式:又稱混合驗證模式,允許使用用戶使用Windows身份驗證和SQL Server身份驗證進行連接

    打開SSMS,右擊“SQL Server實例”,選擇屬性,選擇安全性,可以設置身份驗證模式,如圖所示:

楊書凡00.png


    可以使用SSMS創建管理登錄賬戶,依次展開“SQL Server實例”,安全性,右擊登錄名、新建登錄名,如下圖所示:

楊書凡01.png



三、訪問許可權限設置

    訪問許可權限設置可以分別從服務器、數據庫、對象三個級別進行設置,可以把SQL Server比作一個酒店,如下圖所示:

楊書凡02.png    

1. 服務器級別權限設置

    在SQL Server中內置了一組服務器角色,用來執行服務器級別的管理,如創建數據庫、管理和審覈登陸賬戶等,作用於整臺服務器,而非單個數據庫。

楊書凡03.png


    爲用戶分配服務器級別的權限的步驟如下:

    在SSMS中依次展開“SQL Server實例”,安全性,右擊某個登錄名,選擇屬性,選擇服務器角色,設置需要賦予該用戶的權限,如下圖所示:

楊書凡04.png


2. 數據庫級別的權限設置

    建立了SQL Server登錄賬戶後,需要賦予用戶權限,才能對數據庫進行操作。如果需要訪問某個數據庫,則需要在該數據庫中建立相應的數據庫用戶,數據庫用戶是映射到登錄賬戶上的。

例如:在MySchool數據庫上建立一個用戶User2,則該用戶對應到一個登錄賬戶User2,依次展開數據庫MySchool、安全性、右擊用戶,選擇新建用戶,打開“數據庫-新建”窗口,進行相關設置,如下圖所示:

楊書凡06.png

楊書凡05.png

    

    爲用戶設置數據庫級別的具體步驟如下:    

    在SSMS中依次展開“SQL Server實例”,安全性,右擊某個登錄名,選擇屬性,選擇用戶映射,設置需要賦予該用戶的權限,如下圖所示:

楊書凡07.png


    當數據庫角色不能滿足需求時,還可以創建數據庫角色

    依次展開數據庫MySchool、安全性,右擊角色,新建數據庫角色


3. 對象級別權限設置

    一個數據庫中通常包含多個數據表、視圖、存儲過程等,可在單個表上爲用戶授予權限

(1)爲表授權

    在SSMS上找到需要授權的表,右擊該表,選擇屬性、權限,單擊搜索,添加需要授權的用戶,在下方選擇需要授予用戶的權限

楊書凡08.png


(2)爲數據庫授權

    數據庫本身也是對象,授權方式和表類似,右擊數據庫、屬性、權限

楊書凡09.png


(3)爲存儲過程授權

    依次展開服務器 、數據庫、選擇數據庫、可編程性、存儲過程 、屬性、權限  

楊書凡11.png








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