明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

SQL問(wèn)題匯編(3)

[摘要]在SQL Server 7.0中,角色是一個(gè)新概念。使用數(shù)據(jù)庫(kù)角色有什么意義呢? 我們新增了7個(gè)固定的服務(wù)器角色和9個(gè)固定的數(shù)據(jù)庫(kù)角色。服務(wù)器角色是分散系統(tǒng)管理員工作的一個(gè)辦法。在SQL Server 6.5和更早的版本中,有一個(gè)叫做“sa”的帳號(hào),這個(gè)帳號(hào)可以在數(shù)據(jù)庫(kù)服務(wù)器上做任何事情。在那時(shí),...

在SQL Server 7.0中,角色是一個(gè)新概念。使用數(shù)據(jù)庫(kù)角色有什么意義呢?



我們新增了7個(gè)固定的服務(wù)器角色和9個(gè)固定的數(shù)據(jù)庫(kù)角色。服務(wù)器角色是分散系統(tǒng)管理員工作的一個(gè)辦法。在SQL
Server 6.5和更早的版本中,有一個(gè)叫做“sa”的帳號(hào),這個(gè)帳號(hào)可以在數(shù)據(jù)庫(kù)服務(wù)器上做任何事情。在那時(shí),你可以有10個(gè)Windows
NT用戶被映射成“sa”,這意味著這10個(gè)用戶都可以在任何時(shí)間做任何事情,然而服務(wù)器審計(jì)工具只會(huì)記錄成“sa”的操作。你沒(méi)有任何辦法來(lái)確認(rèn)到底是誰(shuí)做了什么操作。



SQL Server 7.0改進(jìn)了這一點(diǎn)。不是像以前那樣使“sa”具有所有的特權(quán),權(quán)限是通過(guò)角色成員來(lái)獲得的。我們還把系統(tǒng)管理員的特權(quán)劃分成了多個(gè)角色。例如,為了在SQL
Server 7.0中讓某人獲得系統(tǒng)管理員權(quán)限,你只需要把他加入到“sysadmin”這個(gè)固定服務(wù)器角色中即可。



還有其它角色,例如“dbcreator”是用來(lái)創(chuàng)建和更改數(shù)據(jù)庫(kù)的;“securityadmin”是用來(lái)增加新的登錄或者重置缺省數(shù)據(jù)庫(kù)的。“sa”登錄仍然存在,是為了保持向后兼容性。但該權(quán)限是通過(guò)成為“sysadmin”角色中的成員來(lái)獲得的。服務(wù)器的審計(jì)追蹤功能將根據(jù)你的Windows
NT或者SQL Server登錄名來(lái)跟蹤所做的改變,而不管分配給該帳號(hào)的安全特權(quán)。



在單個(gè)數(shù)據(jù)庫(kù)這一級(jí)別上情況也非常相似。在以前版本中,人們會(huì)把自己化名為“dbo”來(lái)獲得對(duì)數(shù)據(jù)庫(kù)的所有權(quán)限。現(xiàn)在用戶可以被分配成“db_owner”角色,同樣可以擁有對(duì)單個(gè)數(shù)據(jù)庫(kù)的完全控制權(quán)限。而且,還有更具體的角色,比如“db_acessadmin”用來(lái)控制對(duì)數(shù)據(jù)庫(kù)的訪問(wèn),“db_securityadmin”用來(lái)給予其他用戶訪問(wèn)權(quán)限,“db_backupoperator”用于備份數(shù)據(jù)。我們還增加了用戶自定義的和應(yīng)用程序角色,而且允許用戶可以同時(shí)成為多個(gè)數(shù)據(jù)庫(kù)角色的成員。



與Windows NT集成是使SQL Server 7.0安全性更易于實(shí)施還是使它更為強(qiáng)健呢?



兩者都是。你應(yīng)該使用7.0版的集成安全的原因之一就是,6.5及更早版本的標(biāo)準(zhǔn)安全模式?jīng)]有提供一些最基本的功能。



關(guān)于安全方面的一個(gè)基本原則就是口令應(yīng)該在一定的時(shí)間后過(guò)期。SQL
Server標(biāo)準(zhǔn)安全模式?jīng)]有這個(gè)功能。另外,它也不禁止為空的口令,不要求口令必須長(zhǎng)于一定數(shù)目的字符,也不提供任何其它高級(jí)口令管理功能。我們希望能夠利用Windows
NT,它已經(jīng)包括所有這些功能。現(xiàn)在,當(dāng)你鎖定使用Windows NT的口令政策時(shí),你通過(guò)集成安全同時(shí)也鎖定了SQL
Server。從這個(gè)角度來(lái)說(shuō),它確實(shí)增強(qiáng)了安全性。


從使用的角度來(lái)說(shuō),增加整個(gè)域的用戶到SQL Server中去要比以前容易的多,而且該過(guò)程是動(dòng)態(tài)的。在SQL
Server 6.5中,如果你使用SQL Server的安全管理器來(lái)增加一組用戶,它將列舉在那個(gè)組中的所有用戶。假如該NT組中有人被新增或者被刪除,你必須重新執(zhí)行以上的操作。而現(xiàn)在呢,舉個(gè)例子:假如你把“domain
user”組加入作為一個(gè)SQL Server登錄,而“domain user”這個(gè)NT組中有用戶被刪除,你不需要在SQL
Server中做任何改動(dòng)來(lái)防止該用戶獲得對(duì)SQL Server的訪問(wèn)權(quán)限。(出處:熱點(diǎn)網(wǎng)絡(luò))