【正文】
2023年 2月 11日星期六 上午 10時(shí) 47分 14秒 10:47: 1最具挑戰(zhàn)性的挑戰(zhàn)莫過(guò)于提升自我。 2023年 2月 11日星期六 10時(shí) 47分 14秒 10:47:1411 February 2023 1空山新雨后,天氣晚來(lái)秋。 , February 11, 2023 很多事情努力了未必有結(jié)果,但是不努力卻什么改變也沒(méi)有。 :47:1410:47Feb2311Feb23 1故人江海別,幾度隔山川。 ? 固定數(shù)據(jù)庫(kù)角色:在數(shù)據(jù)庫(kù)級(jí)別定義,并存在于每個(gè)數(shù)據(jù)庫(kù)中,創(chuàng)建數(shù)據(jù)庫(kù)用戶名時(shí),系統(tǒng)會(huì)自動(dòng)為新建的數(shù)據(jù)庫(kù)用戶名添加固定數(shù)據(jù)庫(kù)角色,但也可以在“數(shù)據(jù)庫(kù)角色屬性”窗口中為某個(gè)指定的固定數(shù)據(jù)庫(kù)角色添加角色成員。 SQL Server 2023實(shí)現(xiàn)了用戶和架構(gòu)的分離。 SELECT Encrypted=ENCRYPTBYKEY(KEY_GUID(39。11/11/202339。 DENY EXECUTE ON usp_GetAllStudents TO U2 否認(rèn)權(quán)限 SQL Server 2023 SQL Server 2023內(nèi)置的加密機(jī)制 Microsoft SQL Server 2023系統(tǒng)不是簡(jiǎn)單的提供一些加密函數(shù),而是把成熟的數(shù)據(jù)安全技術(shù)引進(jìn)到數(shù)據(jù)庫(kù)中,形成了一個(gè)清晰的內(nèi)置加密層次結(jié)構(gòu)。其語(yǔ)法格式如下: REVOKE [ GRANT OPTION FOR ] { [ ALL [ PRIVILEGES ] ] | permission [ ( column [ ,...n ] ) ] [ ,...n ] } [ ON [ class :: ] securable ] { TO | FROM } principal [ ,...n ] [ CASCADE] [ AS principal ] 收回權(quán)限 SQL Server 2023 【例 126】把用戶 U4修改學(xué)生表學(xué)號(hào)的權(quán)限收回 REVOKE UPDATE(學(xué)號(hào) ) ON 學(xué)生表 FROM U4。因?yàn)槊鞔_的DENY權(quán)限優(yōu)先于其他所有權(quán)限,所以即使已被授予訪問(wèn)權(quán)限, DENY權(quán)限也將禁止訪問(wèn)。如果權(quán)限被拒絕,則停止計(jì)算,并且不授予權(quán)限。 ( 2)出現(xiàn) [數(shù)據(jù)庫(kù)屬性 ]對(duì)話框窗口,選擇 [選擇頁(yè) ]窗口中的[權(quán)限 ]項(xiàng),在該頁(yè)面的 [用戶或角色( U) ]中選擇要添加數(shù)據(jù)庫(kù)權(quán)限的擁護(hù),如果該用戶不在列表中,請(qǐng)單擊 [添加( A) …] 按鈕,添加該用戶到當(dāng)前數(shù)據(jù)庫(kù)中。 ( 5)出現(xiàn)“選擇對(duì)象類型”對(duì)話框,依次選擇需要添加權(quán)限的對(duì)象類型前的復(fù)選框,選中其對(duì)象,最后單擊“確定”按鈕。但 public角色只說(shuō)明,用戶能“看到”該數(shù)據(jù)庫(kù),并不能操作該數(shù)據(jù)庫(kù)。 使用應(yīng)用程序角色 SQL Server 2023 如果需要?jiǎng)h除應(yīng)用程序角色 , 可以使用 DROP APPLICATION ROLE語(yǔ)句 。激活一個(gè)應(yīng)用程序角色后,當(dāng)前連接將喪失它所具備的特定用戶權(quán)限,只獲得應(yīng)用程序角色所擁有的權(quán)限。 為角色添加成員 —— 可使用 sp_addrolemember存儲(chǔ)過(guò)程。 SQL Server 2023 public角色 public角色有兩大特點(diǎn): 第一,初始狀態(tài)時(shí)沒(méi)有權(quán)限; 第二,所有的數(shù)據(jù)庫(kù)用戶都是他的成員。 可以獲取孤立用戶的信息 SQL Server 2023允許我們使用 WITHOUT LOGIN子句來(lái)創(chuàng)建一個(gè)沒(méi)有映射到登錄名的用戶 。單擊“安全性”節(jié)點(diǎn)前的“+”號(hào),展開(kāi)“安全性”節(jié)點(diǎn)。 管理數(shù)據(jù)庫(kù)用戶 SQL Server 2023 管理數(shù)據(jù)庫(kù)用戶 數(shù)據(jù)庫(kù)用戶是數(shù)據(jù)庫(kù)級(jí)的主體,是登錄名在數(shù)據(jù)庫(kù)中的映射,是在數(shù)據(jù)庫(kù)中執(zhí)行操作和活動(dòng)行動(dòng)者。 SQL Server 2023不允許刪除其中仍含有對(duì)象的架構(gòu)。 管理架構(gòu)包括創(chuàng)建架構(gòu)、查看架構(gòu)的信息、修改架構(gòu)及刪除架構(gòu)等。對(duì)于登錄名來(lái)說(shuō),可以判斷其是否某個(gè)固定服務(wù)器角色的成員。但即 [安全性 ]節(jié)點(diǎn)前的“ +”號(hào),展開(kāi)安全性節(jié)點(diǎn)。 ALTER LOGIN語(yǔ)句用來(lái)修改登錄名的屬性信息。在“登錄名”上單擊鼠標(biāo)右鍵,彈出快捷菜單,從中“新建登錄( N) ?” 命令 。用戶可以通過(guò)選擇身份驗(yàn)證下拉列表框選擇服務(wù)器的身份驗(yàn)證登錄方式。該登錄名不能被刪除。 身份驗(yàn)證模式 SQL Server 2023 2. 混合模式 混合模式最適合用于外界用戶訪問(wèn)數(shù)據(jù)庫(kù)或不能登錄到 Windows域時(shí)。 SQL Server 2023的兩種身份驗(yàn)證模式: o Windows身份驗(yàn)證模式 o 混合模式 。 SQL Server 2023 授權(quán)遠(yuǎn)程訪問(wèn) 為了遠(yuǎn)程訪問(wèn) SQL Server實(shí)例,需要一個(gè)網(wǎng)絡(luò)協(xié)議以建立到 SQL Server服務(wù)器的連接。 在用戶使用安客戶計(jì)算機(jī)通過(guò)網(wǎng)絡(luò)實(shí)現(xiàn) SQL Server 服務(wù)器的訪問(wèn)時(shí),用戶首先要獲得計(jì)算機(jī)操作系統(tǒng)的使用權(quán)。 在建立用戶的登錄帳號(hào)信息時(shí), SQL Server 會(huì)提示用戶選擇默認(rèn)的數(shù)據(jù)庫(kù)。各層 SQL Server安全控制策略是通過(guò)各層安全控制系統(tǒng)的身份驗(yàn)證實(shí)現(xiàn)的。 身份驗(yàn)證模式 SQL Server 2023 1. Windows身份驗(yàn)證模式 在最外層 , SQL Server的登錄安全性直接集成到Widows的安全上 , 它允許 Windows服務(wù)器驗(yàn)證用戶 。 SQL Server 2023安裝進(jìn)程在 SQL Server 2023安裝過(guò)程中創(chuàng)建了一個(gè) SQL Server 登錄名 sa。 ( 4)最后單擊“確定”按鈕,完成登錄驗(yàn)證模式的設(shè)置。 o 用于連接到 SQL Server 賬戶都稱 SQL Server 的 登錄 :用戶是為特定數(shù)據(jù)庫(kù)定義的,要?jiǎng)?chuàng)建用戶,你必須已經(jīng)定義了該用戶的登錄,用戶 ID同登錄類似,但是它的名稱不需要與登錄相同。 密碼過(guò)期策略是指如何管理密碼的使用期限。 Microsoft SQL Server 2023系統(tǒng)提供了 8個(gè)固定服務(wù)器角色。 ( 5)回到 [選擇登陸名 ]對(duì)話框,可以看到選中的目標(biāo)用戶已包含在對(duì)話框中,確定無(wú)誤后,單擊 [確定 ]按鈕。 SQL Server 2023 服務(wù)器安全的第二道防線 ——架構(gòu)、用戶和角色 SQL Server 2023對(duì)數(shù)據(jù)庫(kù)安全的管理,主要是通過(guò)對(duì)數(shù)據(jù)庫(kù)的 架構(gòu)、用戶名和角色 的管理來(lái)實(shí)現(xiàn),這是 SQL Server 2023服務(wù)器安全的第二道防線 SQL Server 2023 管理架構(gòu) SQL Server 2023實(shí)現(xiàn)了 ANSI中有關(guān)架構(gòu)的概念??梢允褂?ALTER SCHEMA語(yǔ)句完成對(duì)架構(gòu)的修改。 使用默認(rèn)架構(gòu) SQL Server 2023 管理對(duì) SQL Server數(shù)據(jù)庫(kù)的訪問(wèn) 對(duì)于需要進(jìn)行數(shù)據(jù)訪問(wèn)的應(yīng)用程序來(lái)說(shuō) , 僅僅為其授權(quán)訪問(wèn) SQL Server 實(shí)例是不夠的 。 數(shù)據(jù)庫(kù)用戶管理包括創(chuàng)建用戶、查看用戶信息、修改用戶、刪除用戶等操作。 2.管理數(shù)據(jù)庫(kù)用戶 可以通過(guò)語(yǔ)句來(lái)檢查當(dāng)前的登錄名是否可以登錄到某個(gè)數(shù)據(jù)庫(kù): 可以通過(guò)查詢目錄視圖 數(shù)據(jù)庫(kù)用戶的信息。 Microsoft SQL Server 2023系統(tǒng)提供了 9個(gè)固定數(shù)據(jù)庫(kù)角色和 public特殊角色。 ( 3)選擇 [選擇頁(yè) ]中的 [安全對(duì)象 ]項(xiàng),進(jìn)入權(quán)限設(shè)置頁(yè)面 。在使用應(yīng)用程序時(shí),可以僅僅允許那些經(jīng)過(guò)特定應(yīng)用程序連接的用戶來(lái)訪問(wèn)數(shù)據(jù)庫(kù)中的特定數(shù)據(jù),如果不通過(guò)這些特定的應(yīng)用程序連接,那么無(wú)法訪問(wèn)這些數(shù)據(jù)??梢酝ㄟ^(guò)執(zhí)行sp_setapprole系統(tǒng)存儲(chǔ)過(guò)程來(lái)激活應(yīng)用程序角色。設(shè)置帳號(hào)的“服務(wù)器角色”和“用戶映射”。 ( 2)出現(xiàn)“數(shù)據(jù)庫(kù)用戶”對(duì)話框,選擇“選擇頁(yè)”窗口中的“安全對(duì)象”項(xiàng),進(jìn)入權(quán)限設(shè)置頁(yè)面,單擊“添加( A) …” 按鈕 。 SQL Server 2023 數(shù)據(jù)庫(kù)權(quán)限 在 Microsoft SQL Server 2023中給用戶添加數(shù)據(jù)庫(kù)權(quán)限的具體步驟如下 : ( 1) [對(duì)象資源管理器 ]窗口中,單擊服務(wù)器前的“ +”號(hào),展開(kāi)服務(wù)器節(jié)點(diǎn)。 SQL Server 2023 數(shù)據(jù)庫(kù)內(nèi)的權(quán)限始終授予數(shù)據(jù)庫(kù)用戶、角色和 Windows用戶或組,但從不授予 SQL Server登錄。因此,吊銷權(quán)限不同于拒絕權(quán)限。 REVOKE語(yǔ)句是與 GRANT語(yǔ)句相對(duì)應(yīng)的,可以把通過(guò) GRANT語(yǔ)句授予給安全主體的權(quán)限收回。 SQL Server 2023 DENY語(yǔ)句拒絕對(duì) SQL Server 2023安裝的特定數(shù)據(jù)庫(kù)對(duì)象的權(quán)限,防止主體通過(guò)其組或角色成員身份繼承權(quán)限 其語(yǔ)法格式如下: DENY { ALL [ PRIVILEGES ] } | permission [ ( column [ ,...n ] ) ] [ ,...n ] [ ON [ class :: ] securable ] TO principal [ ,...n ] [ CASCADE] [ AS principal ] 【 例 129】拒絕用戶 U1 對(duì)教師表的 SELECT權(quán)限。 GO SQL Server 2023 創(chuàng)建證書,該證書用來(lái)加密對(duì)稱密鑰 CREATE CERTIFICATE nameInfo WITH SUBJECT = 39。 GO OPEN SYMMETRIC KEY key1 DECRYPTION BY PASSWORD=39。 用戶名:數(shù)據(jù)庫(kù)級(jí)上的安全對(duì)象。可通過(guò)“數(shù)據(jù)庫(kù)用戶名-新建”窗口來(lái)創(chuàng)建用戶名。 數(shù)據(jù)庫(kù)安全與角色管理 SQL Server 2023 數(shù)據(jù)加密分層結(jié)構(gòu) 數(shù)據(jù)庫(kù)安全與角色管理 W in d o w s 級(jí) 服務(wù)主密鑰用 D P A PI 加密 S QL S e rv e r 級(jí)