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