轉(zhuǎn)帖|行業(yè)資訊|編輯:況魚(yú)杰|2019-06-24 17:54:54.660|閱讀 220 次
概述:安全性通常被認(rèn)為是數(shù)據(jù)庫(kù)管理員最重要的職責(zé)。SQL Server具有許多用于安全性和保護(hù)數(shù)據(jù)的強(qiáng)大功能,但需要進(jìn)行規(guī)劃和努力才能正確實(shí)現(xiàn)它們。在本文中,作為系列文章的第一篇,Robert Sheldon回顧了許多可用于保護(hù)和保護(hù)SQL Server數(shù)據(jù)庫(kù)的組件。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
Red Gate SQL Monitor監(jiān)視你的 SQL Servers的健康狀況和活動(dòng), 通過(guò)電子郵件的形式在一個(gè)直觀的界面中為你提供智能的警告和建議。
在管理SQL Server實(shí)例時(shí),安全性可能是最復(fù)雜的問(wèn)題之一,但它也是最重要的問(wèn)題之一,尤其是當(dāng)個(gè)人數(shù)據(jù)在線時(shí)。事實(shí)上,對(duì)于許多組織而言,安全是他們的首要任務(wù)。
SQL Server包含各種用于保護(hù)數(shù)據(jù)免遭盜竊,破壞和其他類型惡意行為的工具。本文是關(guān)于SQL Server安全性的系列文章的第一篇中,將會(huì)介紹許多這些工具,目的是為客戶提供可用于保護(hù)數(shù)據(jù)的選項(xiàng)的概述。在隨后的文章中,也將深入研究不同的技術(shù),更深入地了解它們的工作方式以及保護(hù)SQL Server實(shí)例需要做些什么。
SQL Server身份驗(yàn)證和授權(quán)
保護(hù)數(shù)據(jù)始于對(duì)用戶進(jìn)行身份驗(yàn)證并授權(quán)他們?cè)L問(wèn)特定數(shù)據(jù)的能力。在SQL Server中,包括用于驗(yàn)證嘗試連接到SQL Server實(shí)例的用戶身份的身份驗(yàn)證機(jī)制,以及用于確定授權(quán)用戶可以訪問(wèn)哪些數(shù)據(jù)資源,以及可以執(zhí)行哪些操作的授權(quán)機(jī)制。
通過(guò)安全主體,安全性和權(quán)限的組合,在SQL Server中實(shí)現(xiàn)身份的驗(yàn)證和授權(quán)。在這之前,重要的是要注意SQL Server支持兩種身份驗(yàn)證模式:Windows身份驗(yàn)證(有時(shí)稱為集成安全性)和SQL Server和Windows身份驗(yàn)證(有時(shí)稱為混合模式)。
Windows身份驗(yàn)證與Windows用戶和組帳戶集成,從而可以使用本地或Windows帳戶登錄SQL Server。當(dāng)Windows用戶連接到SQL Server實(shí)例時(shí),數(shù)據(jù)庫(kù)引擎會(huì)根據(jù)Windows主體l驗(yàn)證登錄憑據(jù),從而無(wú)需單獨(dú)的SQL Server憑據(jù)。建議盡可能使用Windows身份驗(yàn)證。
但是,在某些情況下,可能需要SQL Server身份驗(yàn)證。在這種情況下,您可以使用SQL Server中內(nèi)置的登錄機(jī)制,而無(wú)需鏈接到Windows帳戶。用戶提供用戶名和密碼以連接到SQL Server實(shí)例,完全繞過(guò)Windows身份驗(yàn)證 。
您可以在設(shè)置SQL Server實(shí)例時(shí)指定身份驗(yàn)證模式,也可以在實(shí)現(xiàn)后通過(guò)服務(wù)器的屬性進(jìn)行更改,如下圖所示:
身份驗(yàn)證和授權(quán)機(jī)制的核心是必須配置的主體,安全性和權(quán)限,以使用戶能夠訪問(wèn)所需的數(shù)據(jù),同時(shí)防止未經(jīng)授權(quán)的用戶訪問(wèn)他們不應(yīng)訪問(wèn)的數(shù)據(jù)。
可以使用內(nèi)置GUI工具或可用的T-SQL語(yǔ)句,通過(guò)SQL Server Management Studio(SSMS)查看和使用主體,安全性和權(quán)限。下圖顯示對(duì)象資源管理器與膨脹的SSMS 安全文件夾WideWorldImporters數(shù)據(jù)庫(kù),低于,擴(kuò)大安全的SQL Server實(shí)例的文件夾。
委托人是在服務(wù)器級(jí)別或數(shù)據(jù)庫(kù)級(jí)別被授予對(duì)SQL Server實(shí)例的訪問(wèn)權(quán)限的個(gè)人,組。服務(wù)器級(jí)主體包括登錄名和服務(wù)器角色,這些角色列在Security文件夾的Logins和Server Roles子文件夾中:
登錄是用于登錄SQL Server實(shí)例的單個(gè)用戶帳戶。登錄可以是本地或域Windows帳戶或SQL Server帳戶。
服務(wù)器角色是一組共享一組通用服務(wù)器級(jí)權(quán)限的用戶。SQL Server支持固定服務(wù)器角色和用戶定義的服務(wù)器角色,您可以將登錄分配給固定服務(wù)器角色,但不能更改其權(quán)限。
數(shù)據(jù)庫(kù)級(jí)主體包括用戶和數(shù)據(jù)庫(kù)角色,這些角色列在數(shù)據(jù)庫(kù)的Security文件夾的Users and Roles子文件夾中:
數(shù)據(jù)庫(kù)用戶是用于登錄特定數(shù)據(jù)庫(kù)的單個(gè)用戶帳戶。數(shù)據(jù)庫(kù)用戶通常映射到相應(yīng)的服務(wù)器登錄,以便提供對(duì)SQL Server實(shí)例以及數(shù)據(jù)本身的訪問(wèn)。但是,您可以創(chuàng)建獨(dú)立于任何登錄的數(shù)據(jù)庫(kù)用戶,這對(duì)于開(kāi)發(fā)和測(cè)試數(shù)據(jù)驅(qū)動(dòng)的應(yīng)用程序以及實(shí)現(xiàn)包含的數(shù)據(jù)庫(kù)非常有用。
數(shù)據(jù)庫(kù)角色是一組共享一組通用數(shù)據(jù)庫(kù)級(jí)權(quán)限的用戶。與服務(wù)器角色一樣,SQL Server支持固定和用戶定義的數(shù)據(jù)庫(kù)角色。
對(duì)于每個(gè)安全主體,都可以授予允許該主體訪問(wèn)或修改一組安全性的權(quán)限。Securables是構(gòu)成數(shù)據(jù)庫(kù)和服務(wù)器環(huán)境的對(duì)象。它們包括從函數(shù)到數(shù)據(jù)庫(kù)用戶到端點(diǎn)的任何內(nèi)容。SQL Server在服務(wù)器,數(shù)據(jù)庫(kù)和模式級(jí)別按層次結(jié)構(gòu)對(duì)象:
服務(wù)器級(jí)安全性包括數(shù)據(jù)庫(kù)以及登錄,服務(wù)器角色和可用性組等對(duì)象。
數(shù)據(jù)庫(kù)級(jí)安全性包括模式以及數(shù)據(jù)庫(kù)用戶,數(shù)據(jù)庫(kù)角色和全文目錄等對(duì)象。
模式級(jí)別的安全性包括諸如表,視圖,函數(shù)和存儲(chǔ)過(guò)程之類的對(duì)象。
權(quán)限定義允許主體對(duì)特定安全性的訪問(wèn)級(jí)別。您可以在服務(wù)器,數(shù)據(jù)庫(kù)或架構(gòu)級(jí)別授予或拒絕對(duì)securables的權(quán)限。
安全性上配置多個(gè)原則的權(quán)限可能是一個(gè)復(fù)雜的,有時(shí)令人沮喪的過(guò)程。如果您做得不對(duì),最終可能會(huì)拒絕對(duì)應(yīng)該有權(quán)訪問(wèn)特定數(shù)據(jù)的用戶的權(quán)限,或者更糟糕的是,拒絕授予不應(yīng)該訪問(wèn)的用戶的權(quán)限。最安全的做法是遵循最小特權(quán)原則,在特定情況下最精確地工作。
年中活動(dòng)持續(xù)進(jìn)行當(dāng)中,優(yōu)惠多多,點(diǎn)擊就可領(lǐng)取 MyEclipse 、.NET Reactor、FastReport .Net、VMProtect等超多在線訂購(gòu)產(chǎn)品優(yōu)惠券!
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn
文章轉(zhuǎn)載自: