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