Microsoft公司的SQL Server是企業(yè)中廣泛使用的數(shù)據(jù)庫,現(xiàn)在很多的電子商務(wù)網(wǎng)站、企業(yè)信息化等都是基于SQL Server進(jìn)行搭建部署的。隨著網(wǎng)絡(luò)的不斷發(fā)展,非法用戶技術(shù)的日益增長,針對SQL Server數(shù)據(jù)庫的非法操作也越來越多,很多企業(yè)的機(jī)密數(shù)據(jù)收到一定的威脅。作為一個合格的DBA必須要掌握通過多個方面加強(qiáng)SQL Server的安全性。
博文大綱:
一、SQL Server權(quán)限設(shè)置;
1.SQL Server的安全機(jī)制;
- 登錄權(quán)限設(shè)置;
(1)SQL Server的身份驗證方式;
1)Windows身份驗證模式;
2)SQL Server和Windows身份驗證模式;
3.訪問許可權(quán)限設(shè)置;
(1)服務(wù)器級別的權(quán)限設(shè)置;
(2)數(shù)據(jù)庫級別權(quán)限設(shè)置;
1)新建數(shù)據(jù)庫用戶;
2)內(nèi)置數(shù)據(jù)庫用戶;
3)數(shù)據(jù)庫角色;
(3)對象級別權(quán)限設(shè)置;
1)為表授權(quán);
2)為數(shù)據(jù)庫授權(quán);
二、SQL Server備份與還原;
1.為什么要備份;
2.備份類型;
(1)完整備份;
(2)差異備份;
(3)事務(wù)日志備份;
3.恢復(fù)模式;
(1)簡單恢復(fù)模式;
(2)完整恢復(fù)模式;
(3)大容量日志恢復(fù)模式;
(4)更改恢復(fù)模式;
4.備份設(shè)備;
(1)SQL Server備份目標(biāo);
(2)備份設(shè)備;
5.備份與還原;
(1)數(shù)據(jù)庫備份;
(2)數(shù)據(jù)庫還原;
SQL Server與其他服務(wù)器不同,通常保存著運(yùn)營、開發(fā)、市場等重要數(shù)據(jù),其中大量數(shù)據(jù)還涉及機(jī)密。因此掌握SQL Server的權(quán)限設(shè)置是DBA必備的關(guān)鍵技能。
SQL Server的安全性是建立在認(rèn)證和訪問許可兩種安全機(jī)制之上的。
SQL Server的安全機(jī)制主要包括以下四個方面:
- 客戶機(jī)的安全機(jī)制;
- 服務(wù)器的安全機(jī)制;
- 數(shù)據(jù)庫的安全機(jī)制;
- 數(shù)據(jù)對象的安全機(jī)制;
(1)用戶必須能夠登錄客戶機(jī),然后才能使用SQL Server應(yīng)用程序或管理工具來訪問數(shù)據(jù)庫。對于使用Windows系統(tǒng)的客戶來說,它主要涉及到操作系統(tǒng)的安全。主要是Windows賬號的安全;
(2)用戶登錄服務(wù)器是,必須使用一個賬號(也稱為登錄賬號)和密碼,服務(wù)器會按照不同的身份驗證方式來判斷這個賬號和密碼的正確性;
(3)任何能夠登錄服務(wù)器的賬號和密碼都對應(yīng)著一個默認(rèn)的數(shù)據(jù)庫。SQL Server對數(shù)據(jù)庫的權(quán)限管理采用的”數(shù)據(jù)庫用戶”的概念。
用戶通過這道防線后才能訪問數(shù)據(jù)庫中的數(shù)據(jù)對象,對數(shù)據(jù)對象能夠做什么樣的訪問稱為訪問權(quán)限。常見的訪問權(quán)限包括數(shù)據(jù)的查詢、更新、插入和刪除。
SQL Server有以下兩種身份驗證模式:
使用Windows身份驗證時,SQL Server會使用操作系統(tǒng)中的Windows用戶密碼。也就是說,用戶身份由Windows進(jìn)行確認(rèn)。SQL Server不再提供密碼,也不執(zhí)行身份驗證。Windows身份驗證使用Kerberos安全協(xié)議。比SQL Server身份驗證更為安全協(xié)議,比SQL Server身份驗證更為安全,可以保護(hù)SQL Server免受大部分來自網(wǎng)絡(luò)的非法操作。
這種驗證模式適用于局域網(wǎng)內(nèi)部,訪問數(shù)據(jù)庫時。這種方式安全、登錄速度快。
SQL Server和Windows 身份驗證模式也稱為混合驗證模式。允許用戶使用Windows身份驗證或者使用SQL Server身份驗證進(jìn)行連接。該模式通常用于運(yùn)行非Windows系統(tǒng)環(huán)境的用戶、Internet用戶或混雜的工作組用戶訪問SQL Server時。例如,外界用戶訪問數(shù)據(jù)庫或不能登錄Windows域時。
當(dāng)使用SQL Server身份驗證時,在SQL Server中創(chuàng)建的登錄名并不是基于Windows用戶賬號的。用戶名和密碼通過使用SQL Server創(chuàng)建并存儲在SQL Server中。如果必須使用SQL Server身份驗證,必須為所有SQL Server賬號啟用密碼策略,如強(qiáng)制密碼過期、密碼復(fù)雜度等。
在SSMS中設(shè)置服務(wù)器身份驗證模式,方法如下:
在SQL Server中,對SQL Server登錄賬戶提供了以下安全策略:
如圖:
新建SQL Server登錄賬號時,為了提高其安全性,建議選中“強(qiáng)制密碼策略”復(fù)選框。
sa是SQL Server的默認(rèn)管理員賬號,由于該賬號廣為人知,容易成為惡意用戶的非法操作目標(biāo),因此除非某些程序要求必須使用sa賬號,否則建議禁用此賬號。絕對不能將sa賬號設(shè)置為空密碼或弱密碼,建議創(chuàng)建一個擁有與sa賬戶權(quán)限相同的超級用戶來管理數(shù)據(jù)庫。但是不能讓擁有管理員權(quán)限的賬號泛濫。
SQL Server中的訪問許可可以從服務(wù)器、數(shù)據(jù)庫及對象三個級別進(jìn)行設(shè)置。
在SQL Server中內(nèi)置了一組服務(wù)器角色(也稱為固定服務(wù)器角色),這些角色用來執(zhí)行服務(wù)器級別的管理,如創(chuàng)建數(shù)據(jù)庫、管理和審核登錄賬戶、中止SQL Server實例中長時間運(yùn)行的進(jìn)程等。他們作用域整臺服務(wù)器,而非單獨(dú)某個數(shù)據(jù)庫。
SQL Server2016中的“角色”類似于Windows中的“組”。通過將不同的角色賦予不同的用戶,用戶可以具有不同的操作權(quán)限。
一個用戶可以擁有多個固定服務(wù)器角色權(quán)限,但是固定服務(wù)器角色不能被修改、添加和刪除。具體的服務(wù)器角色如圖:
注意:SQL Server中還有一個特殊的服務(wù)器角色public,所有登錄名都屬于該角色。該角色是服務(wù)器中權(quán)限最低的角色,只能查看。
為用戶分配服務(wù)器級別權(quán)限的具體步驟:
建立了SQL Server登錄賬戶后,需要賦予用戶權(quán)限,用戶才能夠?qū)?shù)據(jù)庫進(jìn)行查詢與更新等操作。登錄賬戶用戶訪問SQL Server實例,數(shù)據(jù)庫用戶則用于訪問數(shù)據(jù)庫。如果需要訪問某個數(shù)據(jù)庫,則需要在數(shù)據(jù)庫中建立相應(yīng)的數(shù)據(jù)庫用戶。
實際上,數(shù)據(jù)庫用戶是映射到登錄賬戶上的。建立過程如下:
創(chuàng)建的任何一個數(shù)據(jù)庫中默認(rèn)包含兩個特殊用戶dbo和guest,且不能被修改和刪除,如圖:
dbo用戶和guest用戶詳解:
- dbo是數(shù)據(jù)庫的所有者,對數(shù)據(jù)庫具有所有權(quán)限。默認(rèn)情況下,創(chuàng)建數(shù)據(jù)庫的登錄賬號自動對應(yīng)于數(shù)據(jù)庫的dbo用戶,dbo用戶又屬于db_owner數(shù)據(jù)庫角色的成員,而db_owner數(shù)據(jù)庫角色具有對數(shù)據(jù)庫的全部權(quán)限。因此,可以說那個登錄賬戶創(chuàng)建了數(shù)據(jù)庫,這個登錄賬戶就具備了該數(shù)據(jù)庫的所有管理權(quán)限。此外,登錄賬戶sa對應(yīng)所有系統(tǒng)數(shù)據(jù)庫的dbo用戶;
- guest是來賓用戶,同樣不可刪除。guest用戶不映射任何登錄賬戶。所有沒映射的登錄賬戶都將以guest用戶身份訪問數(shù)據(jù)庫。guest用戶默認(rèn)沒有任何權(quán)限,且處于禁用狀態(tài),因此啟用并授予權(quán)限時一定要慎重。
服務(wù)器角色主要控制服務(wù)器登錄名在服務(wù)器范圍內(nèi)的訪問,但是在設(shè)置具體數(shù)據(jù)庫的管理和操作權(quán)限方面就顯得權(quán)限太大了,因此需要依靠數(shù)據(jù)庫角色對數(shù)據(jù)庫級別的對象進(jìn)行更加細(xì)化的權(quán)限劃分。SQL Server默認(rèn)提供了一組固定數(shù)據(jù)庫角色,用來賦予用戶操作數(shù)據(jù)庫的權(quán)限,如查詢數(shù)據(jù)表、備份和還原數(shù)據(jù)庫等。
固定數(shù)據(jù)庫角色及其權(quán)限如圖:
注意:默認(rèn)數(shù)據(jù)庫還包含有一個名為public的角色,該角色用來捕捉數(shù)據(jù)庫用戶的所有默認(rèn)權(quán)限,所有用戶都屬于public,該角色同樣不可以被刪除。
為用戶設(shè)置數(shù)據(jù)庫級別權(quán)限的步驟:
一個數(shù)據(jù)庫中通常包含多個數(shù)據(jù)表、視圖、存儲過程等對象,如果賦予了某個用戶對數(shù)據(jù)庫的讀取權(quán)限,用戶就可以讀取該數(shù)據(jù)庫下的所有表或視圖等。
SQL Server還提供了一些更細(xì)化的權(quán)限,如查詢、插入或更新數(shù)據(jù)的權(quán)限等,這些權(quán)限可以作用于單個表上。如圖:
具體步驟如下:
注意:如果同時賦予了“授予”和“拒絕”權(quán)限,則“拒絕”權(quán)限的優(yōu)先級高于“授予”權(quán)限。
數(shù)據(jù)庫本身也是對象,為數(shù)據(jù)庫授權(quán)是,可以為其授予在數(shù)據(jù)庫中創(chuàng)建其他各種對象的權(quán)限,如更改用戶、創(chuàng)建表、查詢數(shù)據(jù)等。
具體操作步驟如下:
數(shù)據(jù)庫管理員最擔(dān)心的情況就是數(shù)據(jù)庫癱瘓,造成數(shù)據(jù)丟失。而備份作為數(shù)據(jù)的副本,可以有效的保護(hù)和回復(fù)呀數(shù)據(jù)。
對于生產(chǎn)數(shù)據(jù)來說,數(shù)據(jù)的安全性是至關(guān)重要的,任何數(shù)據(jù)的丟失都可能產(chǎn)生嚴(yán)重的后果。
通常,造成數(shù)據(jù)丟失的原因有:
- 程序錯誤;
- 人為錯誤;
- 計算機(jī)失?。ㄏ到y(tǒng)崩潰);
- 磁盤失??;
- 災(zāi)難和盜竊;
所以,數(shù)據(jù)庫管理員的主要職責(zé)之一就是實施和規(guī)劃一個妥善的備份和還原策略以保護(hù)數(shù)據(jù)庫,避免由于各種故障造成損失而丟失數(shù)據(jù),以在系統(tǒng)失效后盡快地恢復(fù)數(shù)據(jù)庫。
在SQL Server中提供了三種常用的備份類型:
完整備份包括對整個數(shù)據(jù)庫、部分事務(wù)日志、數(shù)據(jù)庫結(jié)構(gòu)和文件結(jié)構(gòu)的備份。完成備份代表的是備份完成時刻的數(shù)據(jù)庫。
完整備份是備份的基礎(chǔ),提供了任何其他備份的基準(zhǔn)。其他備份(如差異備份)只有在執(zhí)行完成備份之后才能被執(zhí)行。
差異備份是指對上一次完整備份之后所有更改的數(shù)據(jù)做備份,備份過程能夠識別出數(shù)據(jù)庫哪一部分被修改了,并只對這一部分做備份。
差異備份的優(yōu)勢是速度快、備份數(shù)據(jù)庫所需要的時間很少,但差異備份要求事先執(zhí)行一次完成備份。
事務(wù)日志備份記錄了數(shù)據(jù)庫的所有改變。在備份事務(wù)日志時需要考慮以下因素:
在執(zhí)行數(shù)據(jù)庫事務(wù)日志備份期間,SQL Server將做以下工作:
注意:事務(wù)日志備份主要是SQL語句,而不是整個數(shù)據(jù)庫結(jié)構(gòu)、文件結(jié)構(gòu)或數(shù)據(jù)。
不管是備份還是還原,都是在一定的恢復(fù)模式中進(jìn)行的。恢復(fù)模式是數(shù)據(jù)庫的一種特性、控制這數(shù)據(jù)庫備份和還原的基本行為。書籍庫管理員應(yīng)根據(jù)企業(yè)系統(tǒng)實際運(yùn)作的需求及對數(shù)據(jù)可用性和恢復(fù)的需求來選擇合適的恢復(fù)模式。
SQL Server提供了三種恢復(fù)模式:簡單模式、完整恢復(fù)模式和大容量恢復(fù)模式
在簡單恢復(fù)下,,不活動的日志將被刪除,所以不支持事務(wù)日志備份,如圖:
圖中進(jìn)行了一些數(shù)據(jù)庫備份。在最近的備份t5之后的一段時間,此數(shù)據(jù)庫中出現(xiàn)了數(shù)據(jù)丟失。數(shù)據(jù)庫管理員將使用t5備份來講數(shù)據(jù)庫還原到備份完成的時間點(diǎn),之后對數(shù)據(jù)庫進(jìn)行更改將丟失。
由于不支持事務(wù)日志備份、數(shù)據(jù)庫只能恢復(fù)到備份的時間點(diǎn),而無法將數(shù)據(jù)庫還原到故障點(diǎn)或特定的時間點(diǎn)。因此,簡單恢復(fù)模式主要用于小型數(shù)據(jù)庫和不經(jīng)常更改的數(shù)據(jù)庫。
對于十分重要的生產(chǎn)數(shù)據(jù)庫,在發(fā)生故障時可能要求恢復(fù)到歷史上某個時刻。一旦發(fā)生故障時,必須保證數(shù)據(jù)不丟失,一旦發(fā)生故障時,必須保證數(shù)據(jù)不丟失,保證數(shù)據(jù)能夠恢復(fù)到發(fā)生故障時的狀態(tài)。這樣,就必須采用完整恢復(fù)模式。
完整恢復(fù)模式可在大范圍內(nèi)防止出現(xiàn)故障時丟失數(shù)據(jù),它包括數(shù)據(jù)庫備份和事務(wù)日志備份,并提供全面保護(hù),使數(shù)據(jù)庫免受媒體故障的影響。這個模式使用數(shù)據(jù)庫和所有日志的備份區(qū)恢復(fù)數(shù)據(jù)庫如果日志沒有損壞,SQL Server可以恢復(fù)所有數(shù)據(jù),除了在失敗那一刻的事務(wù)。
由于支持事務(wù)日志備份,因此完整恢復(fù)模式可以將數(shù)據(jù)庫恢復(fù)到任意一個指定的時間點(diǎn)。如圖:
圖中,能將數(shù)據(jù)庫恢復(fù)到故障點(diǎn),從而恢復(fù)所有數(shù)據(jù),恢復(fù)操作可以還原所有已提交的事務(wù),正在進(jìn)行的事務(wù)將回滾。
DBA在某些場合需要對數(shù)據(jù)庫執(zhí)行一些大批量的數(shù)據(jù)插入、更新或刪除操作,如一次需要導(dǎo)入上百萬條數(shù)據(jù)。如果在完整恢復(fù)模式下,那么這些操作將產(chǎn)生大量的日志記錄,導(dǎo)致數(shù)據(jù)庫性能很低。在這種環(huán)境下,可以采用大容量日志恢復(fù)模式來提高性能。
雖然大容量日志恢復(fù)模式會完整地記錄其他事務(wù),但它只對大容量操作進(jìn)行最小記錄。大容量日志恢復(fù)模式是對完整恢復(fù)模式的補(bǔ)充,提供了良好的性能,且占用較小的日志空間d.anshi,大容量日志恢復(fù)模式增加了這些大容量復(fù)制操作丟失數(shù)據(jù)的風(fēng)險,因為最小日志記錄大容量操作不會逐個記錄書屋。
只要日志備份包含大容量操作,數(shù)據(jù)庫就只能恢復(fù)到日志備份的結(jié)尾,而不能恢復(fù)懂啊某個時間點(diǎn),或日志備份中某個標(biāo)記的事務(wù)。
如圖:
在SQL Server中,要備份數(shù)據(jù)庫就要考慮在哪里存儲備份。SQL Server支持的備份目標(biāo)有磁盤、磁盤或URL。SQL Server可以將數(shù)據(jù)庫、事務(wù)日志或文件備份到磁盤、磁帶或URL的指定位置上。磁盤是最常用的存儲媒體,磁帶備份的用法與磁盤設(shè)備基本相同。
在進(jìn)行備份的時候,首先需要建立一個文件來存儲備份的數(shù)據(jù),這個備份文件就稱為備份設(shè)備。
SQL Server使用物理備份設(shè)備和邏輯備份備份設(shè)備來標(biāo)識備份設(shè)備。
邏輯備份設(shè)備永久地存儲在SQL Server內(nèi)的系統(tǒng)表中,使用邏輯備份設(shè)備的優(yōu)點(diǎn)是引用它比引用物理設(shè)備名稱簡單。
操作步驟如下:
同樣的方法進(jìn)行差異備份、事務(wù)日志備份!
也可進(jìn)行自定義計劃備份,自行選擇即可!
操作如下:
選擇指定還原的數(shù)據(jù)庫,
自行選擇要恢復(fù)的數(shù)據(jù)庫及備份源文件即可!
———————— 本文至此結(jié)束,感謝閱讀 ————————
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。
名稱欄目:SQLServer權(quán)限管理和數(shù)據(jù)恢復(fù)詳解-創(chuàng)新互聯(lián)
網(wǎng)站地址:http://chinadenli.net/article28/peocp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信公眾號、外貿(mào)建站、自適應(yīng)網(wǎng)站、App設(shè)計、服務(wù)器托管、品牌網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容