版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、 DATE yyyy-M-d 2007-11-28 FILENAME mysql安全管理.docPage PAGE 6 of NUMPAGES 6Mysql安全管理*網(wǎng)絡(luò)科技(上海)有限公司Mysql安全管理一、 mysql訪問控制mysql的訪問分兩個(gè)階段:1. 檢查用戶是否具有建立與mysql的連接的權(quán)利,主要依靠檢查:用戶名、主機(jī)名和密碼;2. 建立了連接后,服務(wù)器檢查客戶端發(fā)出的每個(gè)請(qǐng)求。看是否有足夠的權(quán)限實(shí)施它。例如執(zhí)行select命令等。二、 權(quán)限控制1. mysql訪問權(quán)限管理通過6個(gè)表:user、db、host、tables_priv、columns_priv和procs_pr
2、iv來控制,6個(gè)表的作用如下表: 表名含義user控制“用戶名”(user)可以從哪一臺(tái)“主機(jī)名”(host)訪問mysql該表包括全局權(quán)限的控制Db規(guī)定哪個(gè)用戶可以訪問哪個(gè)數(shù)據(jù)庫Hosthost表與db表結(jié)合使用在一個(gè)較好層次上控制特定主機(jī)對(duì)數(shù)據(jù)庫的訪問權(quán)限Tables_priv規(guī)定誰可以訪問數(shù)據(jù)庫的哪一個(gè)表columns_priv規(guī)定誰可以訪問表的哪一個(gè)列procs_priv規(guī)定誰可以執(zhí)行哪個(gè)存儲(chǔ)過程2. mysql識(shí)別的權(quán)限如下表:Mysql權(quán)限對(duì)應(yīng)權(quán)限列含義用于數(shù)據(jù)表訪問Select Select_priv是否可以讀取表的數(shù)據(jù)InsertInsert_priv是否可以向表中插入新的記錄
3、deleteDelete_priv是否可以刪除表中現(xiàn)有記錄UpdateUpdate_priv是否可以更新表中現(xiàn)有記錄Lock tablesLock_tables_priv是否可以鎖定表用于改變數(shù)據(jù)庫、數(shù)據(jù)表和視圖CreateCreate_priv是否可以創(chuàng)建一個(gè)新的數(shù)據(jù)庫和數(shù)據(jù)表Create temporary tableCreate_tmp_table_priv是否可以創(chuàng)建臨時(shí)表AlterAlter_priv是否可以重命名并改變它的結(jié)構(gòu)IndexIndex_priv是否可以添加或刪除表索引ReferencesReferences_priv暫不用DropDrop_priv是否可以刪除現(xiàn)有的數(shù)據(jù)
4、庫或表Create viewCreate_view_priv是否可以創(chuàng)建視圖Show viewShow_view_priv是否是可以檢查視圖定義用于存儲(chǔ)過程Alter routineAlter_routine_priv是否改變現(xiàn)有的存儲(chǔ)過程Create routineCreate_routine_priv是否可以定義新的存儲(chǔ)過程ExecuteExecute_priv是否可以執(zhí)行存儲(chǔ)過程用于數(shù)據(jù)庫訪問FileFile_priv是否可以讀取和改變本地文件系統(tǒng)的文件Create userCreate_user_priv是否可以創(chuàng)建新用戶用于mysql管理Grant optionGrant_priv是
5、否可以賦予其他用戶個(gè)人的權(quán)限Show databasesShow_db_priv是否可以看到一份全體數(shù)據(jù)庫的清單ProcessProcess_priv是否可以看淡到其他用戶的mysql進(jìn)程SuperSuper_priv是否可以終止其他用戶的mysql進(jìn)程(kill)ReloadReload_priv是否可以執(zhí)行各種命令Replication clientRepl_client_priv是否可以決定鏡像系統(tǒng)中參與者的信息Replication slaveRepl_slient_priv是否可以通過鏡像機(jī)制讀取msyql服務(wù)器數(shù)據(jù)ShoutdownShutdown_priv是否可以關(guān)閉mysql3
6、. 6個(gè)數(shù)據(jù)權(quán)限表的結(jié)構(gòu)user表db表host表tables_priv表columns_pirv表proc_priv表訪問控制列Host Host Host Host Host Host User Db Db Db Db Db Password User User User User 數(shù)據(jù)庫/表權(quán)限控制列Select_priv Select_priv Select_priv Table_name Table_name Routine_name Insert_priv Insert_priv Insert_priv Grantor Column_name Routine_type Update
7、_priv Update_priv Update_priv Timestamp Timestamp Grantor Delete_priv Delete_priv Delete_priv Table_priv Column_priv Proc_priv Create_priv Create_priv Create_priv Column_priv Timestamp Drop_priv Drop_priv Drop_priv Reload_priv Grant_priv Grant_priv Shutdown_priv References_priv References_priv Proce
8、ss_priv Index_priv Index_priv File_priv Alter_priv Alter_priv Grant_priv Create_tmp_table_priv Create_tmp_table_priv References_priv Lock_tables_priv Lock_tables_priv Index_priv Create_view_priv Create_view_priv Alter_priv Show_view_priv Show_view_priv Show_db_priv Create_routine_priv Create_routine
9、_priv Super_priv Alter_routine_priv Alter_routine_priv Create_tmp_table_priv Execute_priv Execute_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv 安全控制列ssl_type ssl_cipher x509_issuer x509_subj
10、ect 資源控制列:max_questions :規(guī)定每個(gè)小時(shí)之內(nèi)可以允許執(zhí)行多少次數(shù)據(jù)查詢max_updates :規(guī)定每個(gè)小時(shí)之內(nèi)可以允許執(zhí)行多少次數(shù)據(jù)修改max_connections :規(guī)定每個(gè)小時(shí)單個(gè)用戶可以連接到少此max_user_connections :規(guī)定單個(gè)用戶同時(shí)連接多少數(shù)說明:1).user表中的字段列代表的全局的權(quán)限,即一個(gè)用戶如果在user表中設(shè)置允許某個(gè)操作,則該用戶對(duì)所有數(shù)據(jù)庫都可以操作,例如如果給一個(gè)用戶授予select,則該用戶對(duì)所有數(shù)據(jù)庫都讀的權(quán)限;其他表 2).當(dāng)user表的全局權(quán)限與其他表對(duì)象權(quán)限都有設(shè)置時(shí),有下列關(guān)系:User表Y(select為例
11、)N(select為例)YYYNYN3數(shù)據(jù)訪問列的內(nèi)容 3.1、 Host 字段一個(gè)Host列值可以是一個(gè)主機(jī)名或一個(gè)IP地址??梢杂猛ㄅ浞付℉ost值??梢允褂肧QL的模式字符“%”和“_”并具有當(dāng)你在一個(gè)查詢中使用LIKE算符同樣的含義(不允許regex算符)。 (例如:192.168.3.%匹配任何在192.168.3 C類子網(wǎng)的主機(jī)。)3.2、User 字段用戶名必須是文字的或空白。一個(gè)空白值匹配任何用戶。%作為一個(gè)User值不意味著空白,而是匹配一個(gè)字面上的%名字, 當(dāng)一個(gè)到來的連接通過user表被驗(yàn)證而匹配的記錄包含一個(gè)空白的User值,客戶被認(rèn)為是一個(gè)匿名用戶。 3.3、Pas
12、sword字段 口令值可以是空或非空,不允許用通配符。一個(gè)空口令不意味著匹配任何口令,它意味著用戶必須不指定口令。3.4、Db字段在columns_priv和tables_priv表中,Db值必須是真正的數(shù)據(jù)庫名(照字面上),不允許模式和空白。在db和host中,Db值可以以字面意義指定或使用SQL模式字符%或_指定一個(gè)通配符。一個(gè)%或空白匹配任何數(shù)據(jù)庫。 3.5、Table_name,Column_name字段這些列中的值必須是照字面意思的表或列名,不允許模式和空白。 3.6、mysql匹配連接關(guān)系如下三、權(quán)限分配管理:權(quán)限可分為以下層級(jí): 全局層級(jí): 全局權(quán)限適用于一個(gè)給定服務(wù)器中的所有數(shù)
13、據(jù)庫。這些權(quán)限存儲(chǔ)在mysql.user表中。GRANT ALL ON *.*和REVOKE ALL ON *.*只授予和撤銷全局權(quán)限。數(shù)據(jù)庫層級(jí) :數(shù)據(jù)庫權(quán)限適用于一個(gè)給定數(shù)據(jù)庫中的所有目標(biāo)。這些權(quán)限存儲(chǔ)在mysql.db和mysql.host表中。GRANT ALL ON db_name.*和REVOKE ALL ON db_name.*只授予和撤銷數(shù)據(jù)庫權(quán)限。表層級(jí):表權(quán)限適用于一個(gè)給定表中的所有列。這些權(quán)限存儲(chǔ)在mysql.talbes_priv表中。GRANT ALL ON db_name.tbl_name和REVOKE ALL ON db_name.tbl_name只授予和撤銷表權(quán)
14、限。列層級(jí):列權(quán)限適用于一個(gè)給定表中的單一列。這些權(quán)限存儲(chǔ)在mysql.columns_priv表中。當(dāng)使用REVOKE時(shí),您必須指定與被授權(quán)列相同的列。子程序?qū)蛹?jí):CREATE ROUTINE, ALTER ROUTINE, EXECUTE和GRANT權(quán)限適用于已存儲(chǔ)的子程序。這些權(quán)限可以被授予為全局層級(jí)和數(shù)據(jù)庫層級(jí)。而且,除了CREATE ROUTINE外,這些權(quán)限可以被授予為子程序?qū)蛹?jí),并存儲(chǔ)在cs_priv表中。授權(quán)管理:根據(jù)操作人員的所在職責(zé)要求具體操作如下:2.1:數(shù)據(jù)庫管理員: 權(quán)限:全局層的所有的操作權(quán)限: 操作:grant all privileges on
15、 *.* to usenamehostnane IDENTIFIED by password with grant option 2.2:數(shù)據(jù)庫操作者: 權(quán)限:表層級(jí)的訪問和更新權(quán)限: 2.2.1授予某個(gè)用戶某個(gè)表的操作權(quán)限: 操作:grant select,update on dbname.tbl_name to usenamehostnane IDENTIFIED by password 2.2.2授予某個(gè)用戶表的某個(gè)字段操作權(quán)限: 操作:grant update(column_name) on dbname.tbl_name to usenamehostnane IDENTIFIED b
16、y password 2.3:數(shù)據(jù)訪問者: 權(quán)限:表層級(jí)的訪問權(quán)限: 操作:grant select on dbname.tbl_name to usenamehostnane IDENTIFIED by password2.4:執(zhí)行存儲(chǔ)過程的權(quán)限: 權(quán)限:可以執(zhí)行某個(gè)數(shù)據(jù)庫的存儲(chǔ)過程或者函數(shù) 操作:grant Execute on dbname.* to usenamehostnane IDENTIFIED by password 說明:1.創(chuàng)建某個(gè)數(shù)據(jù)庫的某個(gè)存儲(chǔ)過程的執(zhí)行權(quán)限操作為: insert into procs_priv (Host, Db, User, Routine_name
17、, Routine_type, Grantor, Proc_priv, Timestamp) values(host,dbname,username,proc_name,PROCEDURE,存 儲(chǔ)過程創(chuàng)建者的訪問帳號(hào),Execute,Alter Routine,2007-08-14 17:33:39); 2.mysql的中,root用戶可以執(zhí)行、修改任何用戶創(chuàng)建的存儲(chǔ)過程; 其他訪問用戶只能修改自己創(chuàng)建的存儲(chǔ)過程,如果想要修改其他用戶 的存儲(chǔ)過程,則必須要授予c表的選擇權(quán)限。(如果某用戶 被授予了此權(quán)限,則此用戶也擁有了他能訪問的數(shù)據(jù)庫的所有存儲(chǔ)過 程的執(zhí)行權(quán)限)2.5:限制
18、某個(gè)帳戶的資源使用: 權(quán)限:訪問帳號(hào)在每個(gè)小時(shí)內(nèi)可以查詢多少次、訪問多少次等: 操作:GRANT ALL ON dbname.* TO usernamehostname IDENTIFIED BY frank WITH MAX_QUERIES_PER_HOUR 20 MAX_UPDATES_PER_HOUR 10 MAX_CONNECTIONS_PER_HOUR 5 MAX_USER_CONNECTIONS 2; 說明:WITH MAX_QUERIES_PER_HOUR 20:平均每小時(shí)可以執(zhí)行20次查詢; MAX_UPDATES_PER_HOUR 10:平均每個(gè)小時(shí)可以執(zhí)行20次更新; MA
19、X_CONNECTIONS_PER_HOUR 5:每小時(shí)最大連接用戶數(shù); MAX_USER_CONNECTIONS 2:單個(gè)用戶每小時(shí)可連接兩次;說明:對(duì)于修改數(shù)據(jù)庫、表、視圖的修改,存儲(chǔ)過程和函數(shù)的創(chuàng)建和修改權(quán)限,授 權(quán)和資源控制權(quán)限一旦授權(quán)后存在風(fēng)險(xiǎn),建議應(yīng)該只有管理員擁有這些權(quán)限Mysql連接匹配關(guān)系如下表:編號(hào)Host值User值匹配連接1LocalhostRootRoot用戶,從本地可以連接2192.168.1.%RootRoot用戶,從192.168.1的子網(wǎng)可以連接3RootRoot用戶,從的主機(jī)可以連接4空值任何用戶,從的主機(jī)都可以連
20、接5%RootRoot用戶,從任何主機(jī)都可以連接6%空值任何用戶,任何主機(jī)都可以連接7空值空值任何用戶,任何主機(jī)都可以連接8Localhost空值任何用戶,從localhost都可以連接說明: 在連接中如果沒有指定連接參數(shù),mysql客戶端程序使用默認(rèn)值:1. 默認(rèn)主機(jī)名上localhost,默認(rèn)用戶名在windows中是odbc,在linux中是 linux的登陸名; 2. 如果在mysql.user表中同時(shí)存在編號(hào)7、8兩個(gè)訪問連接,那么在當(dāng)客戶 端的連接參數(shù)都為空時(shí),mysql默認(rèn)匹配編號(hào)為8的連接,如果只存在7, 那么匹配編號(hào)7的連接;帳戶管理4.1.給root帳戶和沒有設(shè)置密碼的帳戶設(shè)置一個(gè)強(qiáng)密碼: 操作:SET PASSWORD FOR root= PASSWORD(biscuit); 或者:GRANT USAGE ON *.* TO usernmae IDENTIFIED BY
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度金融機(jī)構(gòu)個(gè)人消費(fèi)貸款合同范本8篇
- 2025年浙教版九年級(jí)化學(xué)下冊(cè)月考試卷
- 2025年度食堂餐飲服務(wù)評(píng)估合同3篇
- 2025年滬教版九年級(jí)生物下冊(cè)月考試卷含答案
- 二零二五年度建筑工程項(xiàng)目管理協(xié)議范本3篇
- 2024版實(shí)習(xí)生保密協(xié)議范本
- 中央電大工程地質(zhì)期末復(fù)習(xí)題及答案電大工程地質(zhì)考試
- 2025年人教A版八年級(jí)物理上冊(cè)階段測(cè)試試卷
- 2025年山東省臨沂高新區(qū)招聘勞務(wù)派遣人員85人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2025年冀少新版選修3化學(xué)下冊(cè)月考試卷含答案
- 二年級(jí)數(shù)學(xué)(上)計(jì)算題專項(xiàng)練習(xí)
- 2024年初一英語閱讀理解專項(xiàng)練習(xí)及答案
- 鋼筋負(fù)溫度焊接工藝要求
- 開發(fā)建設(shè)項(xiàng)目水土保持方案編制技術(shù)問題-廣東省水土保持網(wǎng)
- 薄膜衰減片的仿真設(shè)計(jì)
- 國家開放大學(xué)畢業(yè)生登記表
- DLT724-2000 電力系統(tǒng)用蓄電池直流電源裝置運(yùn)行維護(hù)
- 校企合作協(xié)議書(封面與底面)
- 增資的法律意見書
- 建設(shè)工程項(xiàng)目施工安全管理流程圖3頁
- 市政道路工程單位工程質(zhì)量驗(yàn)收記錄
評(píng)論
0/150
提交評(píng)論