第19章管理SQLServer的安全_第1頁
第19章管理SQLServer的安全_第2頁
第19章管理SQLServer的安全_第3頁
第19章管理SQLServer的安全_第4頁
第19章管理SQLServer的安全_第5頁
已閱讀5頁,還剩52頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

第19章

管理SQLServer的安全本章內(nèi)容SQLServer的安全機制SQLServer的標(biāo)準(zhǔn)登錄模式SQLServer的集成登錄模式使用企業(yè)管理器建立登錄賬戶SQLServer數(shù)據(jù)庫安全性角色權(quán)限SQLServer的安全機制操作系統(tǒng)安全性(第一層)SQLServer的安全性數(shù)據(jù)庫的安全性SQLServer數(shù)據(jù)庫對象的安全性SQLServer的安全性服務(wù)器級的安全性(第二層)建立在登錄SQLServer的登錄賬號/密碼的基礎(chǔ)之上。兩種驗證模式標(biāo)準(zhǔn)SQLServer登錄模式集成WindowsNT登錄模式數(shù)據(jù)庫的安全性數(shù)據(jù)庫級的安全性(第三層)限制用戶能夠訪問哪些數(shù)據(jù)庫設(shè)值用戶登錄的默認(rèn)數(shù)據(jù)庫不要將用戶的默認(rèn)數(shù)據(jù)庫設(shè)為master數(shù)據(jù)庫數(shù)據(jù)庫對象的安全性(一)數(shù)據(jù)庫對象級的安全性(第四層)創(chuàng)建對象時,對象的創(chuàng)建者就是對象的擁有者;對象的擁有者可以實現(xiàn)對對象的完全控制;數(shù)據(jù)庫的擁有者擁有該數(shù)據(jù)庫內(nèi)所有對象的權(quán)限數(shù)據(jù)庫對象的安全性(二)User/RoleSELECTEva

Ivan

David

public

INSERT

UPDATE

DELETE

DRI

SQLServer的標(biāo)準(zhǔn)登錄模式創(chuàng)建登錄賬戶特殊賬戶sa修改和刪除賬戶創(chuàng)建登錄賬戶采用標(biāo)準(zhǔn)登錄模式實現(xiàn)SQLServer服務(wù)器的登錄連接,用戶必須具有合法的登錄賬號和密碼。創(chuàng)建登錄用戶的語法:sp_addlogin[@loginame=]'login'[,[@passwd=]'password'][,[@defdb=]'database'][,[@deflanguage=]'language'][,[@sid=]sid][,[@encryptopt=]'encryption_option']創(chuàng)建登錄賬戶舉例(一)創(chuàng)建一個test登錄賬號Sp_addlogin'test','test','pubs'查詢登錄賬號信息usemastergoselectconvert(varbinary(32),password)fromsyslogins--這是一個系統(tǒng)視圖wherename='test'創(chuàng)建登錄賬戶舉例(二)創(chuàng)建一個test2登錄賬號,不對密碼進(jìn)行加密。Sp_addlogin'test2','test2','pubs',@encryptopt='skip_encryption'查詢登錄賬號信息selectconvert(varchar(32),password)fromsysloginswherename='test2'特殊賬戶saSQLServer自帶的特殊登錄賬號saSa賬號擁有服務(wù)器和所有數(shù)據(jù)庫具有最高的權(quán)限修改和刪除賬戶sp_defaultdb:修改登錄賬戶的默認(rèn)數(shù)據(jù)庫sp_defaultlanguage:修改登錄賬戶的默認(rèn)語言sp_password:修改登錄賬戶的密碼Sp_droplogin:刪除登錄賬戶修改和刪除賬戶舉例(一)Sp_defaultdb語法:sp_defaultdb[@loginame=]'login',

[@defdb=]'database‘修改test賬號的默認(rèn)數(shù)據(jù)庫為northwindExecsp_defaultdb‘test’,’northwind’修改和刪除賬戶舉例(二)sp_password語法:sp_password[[@old=]'old_password',]{[@new=]'new_password'}[,[@loginame=]'login']修改test賬戶的密碼為111Execsp_password‘test’,’111’,’test’課堂練習(xí)1.創(chuàng)建一個登錄賬戶student,要求不對密碼加密,默認(rèn)數(shù)據(jù)庫為pubs。2.嘗試使用新的登錄賬號和密碼登錄服務(wù)器。3.修改student賬號的默認(rèn)數(shù)據(jù)庫為northwind4.修改student賬號的密碼SQLServer的集成登錄模式將windows登錄與SQLServer登錄集成在一起。將windowsNT/2000的用戶和工作組映射為SQLServer的登錄賬戶。由操作系統(tǒng)(windowsNT/2000)代替SQLServer執(zhí)行登錄審查的任務(wù)。集成登錄模式舉例一.創(chuàng)建windows2000用戶/工作組;控制面板->管理工具->計算機管理創(chuàng)建一個windows用戶user001二.將windows2000的用戶/工作組設(shè)為SQLServer的登錄賬戶;sp_grantlogin[@loginame=]'login'sp_grantlogin[TC\user001]修改/刪除集成登錄賬號Sp_denylogin:禁止某個windows用戶/工作組訪問SQLServer服務(wù)器;Sp_revokelogin:撤銷某個windows用戶/工作組登錄SQLServer的權(quán)限;注意上面兩者的區(qū)別:一個是明確禁止登錄,一個是撤銷現(xiàn)有登錄。使用企業(yè)管理器建立登錄賬戶SQLServer數(shù)據(jù)庫安全性添加數(shù)據(jù)庫用戶數(shù)據(jù)庫用戶與登錄賬戶的關(guān)系刪除數(shù)據(jù)庫用戶特殊數(shù)據(jù)庫用戶數(shù)據(jù)庫用戶與登錄賬戶的關(guān)系建立一個登錄賬號,使得用戶可以登錄SQLServer,但是該用戶還不具備使用數(shù)據(jù)庫的權(quán)利;建立一個數(shù)據(jù)庫用戶,使得該用戶與某個登錄賬號相關(guān)聯(lián),這樣,這個登錄用戶就可以使用某個數(shù)據(jù)庫了。添加數(shù)據(jù)庫用戶使用sp_grantdbaccess添加數(shù)據(jù)庫用戶;語法:sp_grantdbaccess[@loginame=]'login'[,[@name_in_db=]'name_in_db‘]一般可以省略‘name_in_db’,使得數(shù)據(jù)庫用戶名就是登錄賬戶名(即:‘name_in_db’=‘login’),避免混淆。添加數(shù)據(jù)庫用戶舉例將test賬戶添加為pubs數(shù)據(jù)庫的一個用戶usepubs--注意:這里要進(jìn)入pubs數(shù)據(jù)庫goexecsp_grantdbaccess'test'注意:這里雖然完成了添加數(shù)據(jù)庫用戶的工作,但是該用戶的權(quán)限還有待添加。默認(rèn)情況下,新數(shù)據(jù)庫用戶具有public角色。刪除數(shù)據(jù)庫用戶使用sp_revokedbaccess刪除數(shù)據(jù)庫用戶,實際上就是斷開登錄賬戶與數(shù)據(jù)庫用戶的關(guān)系。語法:sp_revokedbaccess[@name_in_db=]'name_in_db'比如:execsp_revokedbaccess‘test’特殊數(shù)據(jù)庫用戶——dbodbo是數(shù)據(jù)庫的擁有者,SQLServer自帶的用戶,默認(rèn)的,每個數(shù)據(jù)庫的擁有者都是dbo;所有數(shù)據(jù)庫的dbo用戶都對應(yīng)于sa登錄賬號;此用戶無法刪除;特殊數(shù)據(jù)庫用戶——guest現(xiàn)有的數(shù)據(jù)庫——除了model數(shù)據(jù)庫,都有g(shù)uest用戶。guest用戶使得所有登錄到SQLServer的用戶都可以訪問現(xiàn)有數(shù)據(jù)庫。實際上,如果一個登錄賬號沒有和一個數(shù)據(jù)庫用戶關(guān)聯(lián),那么,如果數(shù)據(jù)庫有g(shù)eust用戶,這個登錄賬號就和guest用戶相關(guān)聯(lián)。如果數(shù)據(jù)庫沒有g(shù)uest用戶,這個登錄賬號就不能訪問該數(shù)據(jù)庫。使用企業(yè)管理器管理數(shù)據(jù)庫用戶使用企業(yè)管理器,可以方便的管理數(shù)據(jù)庫用戶:新建、刪除…課堂練習(xí)5.使用企業(yè)管理器察看northwind數(shù)據(jù)庫有沒有g(shù)uest用戶,如果有,刪除它。6.使用student登錄賬號登錄,看能不能查看northwind數(shù)據(jù)庫中的表。7.將student登錄添加為northwind數(shù)據(jù)的一個用戶。重做6。8.使用企業(yè)管理器管理登錄賬號和數(shù)據(jù)庫用戶(完成添加登錄賬號、數(shù)據(jù)庫用戶,刪除登錄賬號、數(shù)據(jù)庫用戶的工作)。角色角色概述固定服務(wù)器角色固定數(shù)據(jù)庫角色創(chuàng)建角色角色概述(一)什么是權(quán)限?任何用戶如果要訪問數(shù)據(jù)庫中的對象,首先他必須獲得訪問該對象的權(quán)限。比如:student用戶如果要查詢dbo用戶的某個表tab1中的內(nèi)容,student用戶首先需要獲得dbo.tab1表的select權(quán)限。比如:student用戶如果要更新dbo用戶的表tab1中的內(nèi)容,student用戶首先需要獲得dbo.tab1表的update權(quán)限。角色概述(二)什么是角色?角色是一組權(quán)限的集合。為什么需要角色?方便服務(wù)器、數(shù)據(jù)庫的權(quán)限管理。比如:可以將一組權(quán)限賦給一個角色,然后再將這個角色賦給數(shù)據(jù)庫用戶或登錄賬戶,從而登錄賬戶和數(shù)據(jù)庫用戶就具有了這組權(quán)限。固定服務(wù)器角色固定的服務(wù)器角色是由系統(tǒng)自動提供的;服務(wù)器角色用來管理服務(wù)器的相關(guān)權(quán)限;可以從sp_helpsrvrole獲得固定服務(wù)器角色的列表;可以從sp_srvrolepermission獲得每個角色的特定權(quán)限。固定數(shù)據(jù)庫角色固定的數(shù)據(jù)庫角色是由系統(tǒng)自動提供的;數(shù)據(jù)庫角色用來管理數(shù)據(jù)庫的相關(guān)權(quán)限;可以從sp_helpdbfixedrole獲得固定數(shù)據(jù)庫角色的列表;可以從sp_dbfixedrolepermission獲得每個角色的特定權(quán)限。特殊的數(shù)據(jù)庫角色——public存在于所有數(shù)據(jù)庫中所有的數(shù)據(jù)庫用戶都屬于public角色;新建一個用戶,他默認(rèn)就具有public角色;不能刪除public角色創(chuàng)建角色SQLServer允許使用新的數(shù)據(jù)庫角色;注意:這個角色只在某個數(shù)據(jù)庫范圍內(nèi)可用。使用sp_addrole創(chuàng)建新數(shù)據(jù)庫角色;語法:sp_addrole[@rolename=]'role'[,[@ownername=]'owner']創(chuàng)建角色舉例在pubs數(shù)據(jù)庫中創(chuàng)建一個新的數(shù)據(jù)庫角色:managersusepubsgosp_addrolemanagers創(chuàng)建角色注意SQLServer角色可以包含1到128個字符,包括字母、符號及數(shù)字。但是,角色不能:含有反斜線符號(\)。為NULL,或為空字符串('')。在添加角色之后,可以使用sp_addrolemember添加安全帳戶,使其成為該角色的成員。添加新的角色之后,還可以給這個角色授予新的權(quán)限。當(dāng)使用GRANT、DENY或REVOKE語句將權(quán)限應(yīng)用于角色時,角色的成員將繼承這些權(quán)限,就好像將權(quán)限直接應(yīng)用于其帳戶一樣。添加角色成員語法sp_addrolemember[@rolename=]'role',[@membername=]'security_account‘關(guān)于‘security_account‘:是數(shù)據(jù)庫中的用戶,不是登錄賬號。添加角色成員舉例Sp_addlogin'm1','111','pubs'--新建登錄賬號usepubs--注意:這里要進(jìn)入pubs數(shù)據(jù)庫gosp_grantdbaccess‘m1’,‘Tom‘--新加數(shù)據(jù)庫用戶Tom,與m1登錄賬號關(guān)聯(lián)gosp_addrolemember‘managers’,‘Tom‘–將Tom用戶加入到managers角色中課堂練習(xí)9.使用sa賬號登錄,在pubs數(shù)據(jù)庫中創(chuàng)建一個新的角色,developers。10.將stu用戶添加為developers角色的一個成員。權(quán)限權(quán)限概述授予權(quán)限撤銷權(quán)限拒絕訪問權(quán)限概述(一)SQLServer數(shù)據(jù)庫中的每一個對象都由一個該數(shù)據(jù)庫的用戶所擁有。當(dāng)數(shù)據(jù)庫對象創(chuàng)建好之后,只有對象的擁有者才能訪問該對象。任何其他用戶如果要訪問該對象,必須獲得對象擁有者賦給他們的“權(quán)限”權(quán)限概述(二)對于表和視圖,擁有者可以授予insert,update,delete,select和references權(quán)限給別的用戶;對于存儲過程,擁有者可以授予execute權(quán)限給別的用戶;數(shù)據(jù)庫擁有者可以授予某些T-SQL語句的執(zhí)行權(quán)限給別的用戶。授予權(quán)限使用Grant語句授予權(quán)限授予對象權(quán)限授予命令權(quán)限授予命令權(quán)限語法:GRANT{ALL|statement[,...n]}TOsecurity_account[,...n]授予權(quán)限授予對象權(quán)限語法語法:GRANT{ALL[PRIVILEGES]|permission[,...n]}{[(column[,...n])]ON{table|view}|ON{table|view}[(column[,...n])]|ON{stored_procedure|extended_procedure}|ON{user_defined_function}}TOsecurity_account[,...n][WITHGRANTOPTION]授予權(quán)限舉例由sa賬戶授予managers角色新的權(quán)限Grantcreatetabletomanagers在pubs數(shù)據(jù)庫中,由sa賬戶授予managers角色對dbo.titles表的select權(quán)限。Grantselectontitlestomanagers撤銷權(quán)限使用revoke語句撤銷權(quán)限撤銷命令權(quán)限語法:REVOKE{ALL|statement[,...n]}FROMsecurity_account[,...n]撤銷權(quán)限撤銷對象權(quán)限語法:REVOKE[GRANTOPTIONFOR]{ALL[PRIVILEGES]|permission[,...n]}{[(column[,...n])]ON{table|view}|ON{table|view}[(column[,...n])]|ON{stored_procedure|extended_procedure}|ON{user_defined_function}}{TO|FROM}security_account[,...n][CASCADE]撤銷權(quán)限舉例撤銷之前授給Tom的createtable權(quán)限。RevokecreatetablefromTom撤銷Tom的對dbo.titles表的選擇權(quán)限。RevokeselectontitlesfromTom拒絕訪問拒絕給當(dāng)前數(shù)據(jù)庫內(nèi)的安全帳戶授予權(quán)限,防止安全帳戶通過其組或角色成員資格繼承權(quán)限。拒絕命令權(quán)限語法:DENY{ALL|statement[,...n]}

TOsecurity_account[,...n]拒絕訪問拒絕對象權(quán)限語法:DENY{ALL[PRIVILEGES]|permission[,...n]}{[(column[,...n])]ON{table|view}|ON{table|view}[(column[,...n])]|ON{stored_procedure|extended_procedure}|ON{user_defined_function}}TOsecurity_account[,...n][CAS

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論