




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1安全性管理MySQL的權(quán)限控制體系權(quán)限表賬戶管理授權(quán)與回收權(quán)限角色視圖2
第一節(jié)
MySQL的權(quán)限控制體系
MySQL將操縱數(shù)據(jù)庫資源的權(quán)限范圍劃分為5個級別。
順序級別權(quán)
限范圍
說明1GlobalLevel對整個MySQL數(shù)據(jù)庫服務(wù)器的全局權(quán)限。DBA特權(quán)2DatabaseLevel數(shù)據(jù)庫級別的權(quán)限。數(shù)據(jù)庫特權(quán)3TableLevel表級別的權(quán)限。
操作數(shù)據(jù)表權(quán)限4ColumnLevel表中某一列的權(quán)限。操作表中的某些列的權(quán)限5RoutineLevel針對函數(shù)、觸發(fā)器和存儲過程的權(quán)限。使用函數(shù)、觸發(fā)器和存儲過程權(quán)限3
一、具有DBA特權(quán)的數(shù)據(jù)庫用戶
DBA擁有支配整個數(shù)據(jù)庫資源的所有特權(quán)。其中主要包括:訪問數(shù)據(jù)庫的任何數(shù)據(jù);數(shù)據(jù)庫的調(diào)整、重構(gòu)和重組;注冊用戶、授予和回收數(shù)據(jù)庫用戶訪問數(shù)據(jù)對象的權(quán)限;控制整個數(shù)據(jù)庫運(yùn)行和跟蹤審查;數(shù)據(jù)庫備份和恢復(fù)等權(quán)限。4
二、支配數(shù)據(jù)庫資源特權(quán)的數(shù)據(jù)庫用戶
這類用戶是數(shù)據(jù)庫、表、視圖等數(shù)據(jù)對象的創(chuàng)建者,常稱為“具有RESOURCE特權(quán)的用戶”,擁有這些數(shù)據(jù)對象上所有操作和控制的權(quán)限,主要包括:創(chuàng)建表、索引和聚簇的權(quán)限;可以授予或回收其他用戶對其所創(chuàng)建的數(shù)據(jù)對象的所有訪問權(quán)限;可以對其所創(chuàng)建的數(shù)據(jù)對象跟蹤審查的權(quán)限。5
三、一般數(shù)據(jù)庫用戶
這類用戶可以連接數(shù)據(jù)庫,也稱為“具有CONNECT特權(quán)的用戶”。主要包括:能夠按照所獲得的權(quán)限查詢或更新數(shù)據(jù)庫中的數(shù)據(jù);可以創(chuàng)建視圖或定義數(shù)據(jù)的別名等權(quán)限。6第二節(jié)
權(quán)限表
用戶的注冊信息(用戶名、IP地址|主機(jī)名、密碼等)以及對數(shù)據(jù)庫資源的訪問權(quán)限都存放在權(quán)限表中。MySQL服務(wù)器通過這些權(quán)限表控制用戶對數(shù)據(jù)庫的訪問,權(quán)限表是數(shù)據(jù)庫系統(tǒng)安全控制的關(guān)鍵。
權(quán)限表存放在MySQL數(shù)據(jù)庫中,最重要的權(quán)限表是user表和db表,除此之外還有table_priv表、column_priv表和proc_priv表。7一、user表(1)范圍列包括Host和User,分別表示主機(jī)名和用戶名,Host和User為user表的聯(lián)合主鍵。(2)權(quán)限列決定用戶的權(quán)限,指出用戶在全局范圍內(nèi)具有的各種權(quán)限。字段的類型為ENUM,取值只能是Y和N,Y具有的權(quán)限,N為沒有權(quán)限,N為默認(rèn)值。(3)安全列指定用戶標(biāo)識和密碼等身份驗證信息。(4)資源控制列限制用戶使用資源,如限制每小時查詢、更新、連接等操作次數(shù)。user表存儲所有登錄賬戶的信息,一共有49個字段,可以分為四類:8二、db表圖8.2查看db表的字段定義db表存放用戶對某個數(shù)據(jù)庫的操作權(quán)限。db表的字段大致分為兩類,分別是用戶列和權(quán)限列。用戶列權(quán)限列9三、tables_priv表tables_priv表用于對表設(shè)置操作權(quán)限,tables_priv表的結(jié)構(gòu):FieldTypeNullKeyHost|char(255NOPRIDbchar(64)NOPRIUserchar(32)NOPRITable_namechar(64)NOPRIGrantorvarchar(288)NOMULTimestamptimestampNO
Table_privset('Select','Insert','Update','Delete','Create','Drop','Grant','References','Index','Alter','CreateView','Showview','Trigger')NO
Column_privset('Select','Insert','Update','References')
NO
圖8.3查看tables_priv表的字段定義10四、columns_priv表columns_priv表用于對表中某一列設(shè)置操作權(quán)限。11五、procs_priv表保存對某個存儲過程或存儲函數(shù)設(shè)置的操作權(quán)限。
12
MySQL權(quán)限管理系統(tǒng)通過兩個階段進(jìn)行認(rèn)證(1)對連接的用戶進(jìn)行身份認(rèn)證,合法的用戶通過認(rèn)證,不合法的用戶拒絕連接。(2)對通過認(rèn)證的合法用戶賦予相應(yīng)的權(quán)限,用戶可以在擁有的權(quán)限范圍內(nèi)對數(shù)據(jù)庫做相應(yīng)的操作。
13
第三節(jié)賬戶管理
賬戶管理是MySQL數(shù)據(jù)庫的安全性管理的重要內(nèi)容,賬戶管理主要內(nèi)容是對上述權(quán)限表的操作。MySQL提供多個賬戶管理的語句,創(chuàng)建用戶、刪除用戶、密碼管理和權(quán)限管理。14
一、創(chuàng)建新用戶SQL語句的基本格式如下:
CREATEUSER用戶名IDENTIFIEDBY'密碼’[WITH資源限制]用戶名由用戶名與主機(jī)名(或IP地址)組成。IDENTIFIEDBY設(shè)置密碼。資源限制是可選項,規(guī)定每小時執(zhí)行查詢次數(shù)之類的約束。說明:只能以管理員身份登錄,才有創(chuàng)建用戶的權(quán)限,否則會被拒絕創(chuàng)建。151、例8.1創(chuàng)建新用戶示例。2、查看用戶表顯示所有用戶名,包括新建用戶。16二、刪除普通用戶
刪除普通用戶的命令有兩種:DROPUSER‘用戶名’[,用戶名]…;DELETEFROMmysql.userWHEREhost=′主機(jī)名′
AND
user=‘用戶名’;17三、修改密碼1.使用ALTERUSER命令修改root賬戶密碼,利用user()函數(shù)返回當(dāng)前連接MySQL的用戶名和主機(jī)名。2.使用SET命令修改root賬戶密碼。3.用戶Root使用ALTERUSER命令修改普通賬戶的密碼。184.普通賬戶可以如上述1、2的方法修改自己賬戶的密碼。5.驗證密碼修改結(jié)果的方法是執(zhí)行exit命令退出,再使用新密碼重新登錄。19
第四節(jié)授權(quán)與回收權(quán)限
授權(quán)是為某個用戶或角色賦予某些權(quán)限,規(guī)定用戶訪問數(shù)據(jù)庫的范圍和操作限制。一、授權(quán)與被授權(quán)的層次關(guān)系
20二、MySQL的授權(quán)語句
第一種授權(quán)格式:使用ALL關(guān)鍵字對全局、數(shù)據(jù)庫和表級用戶授予全部權(quán)限。
1.
全局級別授權(quán)
GRANTALLON*.*TO用戶名;
例8.4
2.
數(shù)據(jù)庫級別授權(quán)
GRANTALLON數(shù)據(jù)庫名.*TO用戶名;
例8.5213.表級別授權(quán)
GRANTALLON數(shù)據(jù)庫名.表名TO用戶名;例8.6例8.7查看用戶jean獲得的所有權(quán)限22第二種授權(quán)格式:DBA或數(shù)據(jù)庫特權(quán)用戶授予其他用戶對數(shù)據(jù)庫對象的操作權(quán)限。語句格式:
GRANT權(quán)限ON數(shù)據(jù)庫對象TO用戶或角色
[WITHGRANTOPTION]說明:
(1)權(quán)限是相應(yīng)對象任何有效權(quán)限的組合。ALL表示所有可能的權(quán)限。(2)數(shù)據(jù)庫對象可以是一個表、視圖、表或視圖的列及存儲過程;(3)被授權(quán)的用戶或角色;(4)WITHGRANTOPTION短語表示獲得權(quán)限的用戶還能將權(quán)限轉(zhuǎn)授給其他用戶。23三、MySQL的回收權(quán)限語句第一種收回權(quán)限的格式:REVOKEALLON*.*FROM用戶名;REVOKEALLON數(shù)據(jù)庫名.*FROM用戶名;REVOKEALLON數(shù)據(jù)庫名.表名FROM用戶名;第二種收回權(quán)限的格式:
REVOKE權(quán)限ON數(shù)據(jù)庫對象FROM用戶名;例8.9授予和回收SNO01查詢SC和轉(zhuǎn)授權(quán)限。GRANTSELECTONschool.SCto'sno01'@'%’withgrantoption;REVOKESELECTONschool.scfrom'sno01'@'%';REVOKEGRANTOPTIONONschool.scfrom'sno01'@'%';24
第五節(jié)角色角色是權(quán)限的集合,可以為角色授予或收回權(quán)限。用戶可以被賦予角色,同時擁有角色具有的權(quán)限。
引入角色的目的是方便管理擁有相同權(quán)限的用戶。
一、創(chuàng)建新角色語句CREATEROLErole_name;說明:role_name為角色名,命名的方法與用戶名相同。創(chuàng)建角色時,角色無任何權(quán)限,需要授予它權(quán)限,并激活角色。25二、給角色賦予權(quán)限創(chuàng)建的新角色是沒有任何權(quán)限的,需要給角色授權(quán)。
GRANT權(quán)限ON表名TO'role_name'[@'host_name'];三、查看角色的權(quán)限
SHOWGRANTSFOR'角色名’;例如,SHOWGRANTSFOR'teachers'@'localhost';四、收回角色的權(quán)限
REVOKE權(quán)限ON表名FROM角色名;例如,REVOKEINSERT,UPDATEONschool.SCfrom`teachers`@`localhost`;26五、給用戶賦予角色
GRANTrole[,role2,...]TOuser[,user2,...];說明:給用戶賦予角色,用戶將獲得角色的權(quán)限。六、撤銷用戶角色
REVOKEroleFROMuser;例如,REVOKEteachersFROMTNO01;27七、激活角色
授予角色權(quán)限和用戶賦予角色,還需要激活角色才能使角色生效。激活角色的方法有多種:方式1:使用SETDEFAULTROLE命令激活角色例如,SETDEFAULTROLEALLTO'teachers'@'localhost','students'@'localhost';方式2:將activate_all_roles_on_login變量設(shè)置為ON。例如,SETGLOBALactivate_all_roles_on_login=ON;28八、刪除角色DROPROLErole;說明:如果刪除角色,賦予角色的用戶就無法使用角色的權(quán)限。
例如,刪除角色teachers,用戶'TNO01'@'localhost‘將不再具有角色teachers的權(quán)限。
DROPROLE'teachers'@'localhost';29第六節(jié)視圖
視圖是從一個或多個基本表導(dǎo)出的虛表,它的數(shù)據(jù)來自于一些基本表,在數(shù)據(jù)庫中只存儲有關(guān)視圖的定義。
視圖也是數(shù)據(jù)庫系統(tǒng)實(shí)現(xiàn)安全性控制的一種方法。針對不同的用戶定義不同的視圖,可以限制用
戶的訪問范圍,且訪問視圖也需要授予權(quán)限。視圖定義之后,DBMS自動維護(hù)它,當(dāng)基本表數(shù)據(jù)發(fā)生變化時,視圖的數(shù)據(jù)也會自動地隨之變化。30一、創(chuàng)建視圖
CREATEVIEW<視圖名稱>[<字段列表>]AS<SELECT查詢語句>;例8.16基于多表創(chuàng)建視圖示例3132二、更新視圖數(shù)據(jù)
視圖是從基本表中引用數(shù)據(jù),通過視圖也可以執(zhí)行插入(INSERT)、更新(UPDATE)和刪除(DELETE)表中的數(shù)據(jù),其操作結(jié)果將轉(zhuǎn)換到基本表中。但也有不能更新的情況,如視圖中包含SUM()、COUNT()、MAX()和MIN()等函數(shù);視圖中包含UNION、UNIONALL、DISTINCT
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 建筑工地施工安全措施不到位免責(zé)條款協(xié)議
- 堡坎承包工程合同
- 環(huán)保產(chǎn)業(yè)園區(qū)入駐企業(yè)合作協(xié)議
- 標(biāo)準(zhǔn)房屋買賣合同
- 項目解決方案實(shí)施與進(jìn)度跟蹤報告
- 高級烹飪食材采購及供應(yīng)責(zé)任免除協(xié)議書
- 北京液化石油氣鋼瓶租賃合同8篇
- 高中信息技術(shù)浙教版:4-3 以三維全景圖形式發(fā)布-教學(xué)設(shè)計
- 教學(xué)計劃(教學(xué)設(shè)計)-2024-2025學(xué)年外研版(三起)英語四年級上冊
- 電子證據(jù)存證保全協(xié)議
- 北京工業(yè)大學(xué)《機(jī)器學(xué)習(xí)基礎(chǔ)》2022-2023學(xué)年期末試卷
- 解剖臺市場發(fā)展前景分析及供需格局研究預(yù)測報告
- GB/T 44590-2024天然林保護(hù)修復(fù)生態(tài)效益評估指南
- 民用無人機(jī)操控員執(zhí)照(CAAC)考試復(fù)習(xí)重點(diǎn)題及答案
- 第20課清朝君主專制的強(qiáng)化 教案
- 骨科睡眠護(hù)理
- 2025年高考語文復(fù)習(xí)備考復(fù)習(xí)策略講座
- 2024至2030年中國聚硫橡膠行業(yè)市場現(xiàn)狀分析及未來前景規(guī)劃報告
- 天津市河西區(qū)2023-2024學(xué)年高一上學(xué)期1月期末化學(xué)試題(原卷版)
- 2025高考語文步步高大一輪復(fù)習(xí)講義65練答案精析
- 部編版八年級語文下冊全冊單元教材分析
評論
0/150
提交評論