W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
一、權(quán)限簡介
權(quán)限主要是為了用戶能在一定范圍內(nèi)進行操作。
二、創(chuàng)建權(quán)限
grant all privileges on db_name.tb_name to user_name@'login_address' [identified by "密碼"] [with grant option];
all: 該用戶的權(quán)限,如我們只授予部分權(quán)限,直接替代all即可。
db_naem.tb_name: 數(shù)據(jù)庫.數(shù)據(jù)表,如果我們不指定的話,我們可以直接使用*.*。
user_name: 要創(chuàng)建的用戶名.當(dāng)用戶名存在的時候會給存在的用戶重新授權(quán),當(dāng)用戶不存在的時候會創(chuàng)建用戶并給予相對應(yīng)的權(quán)限。
login_address: 該用戶連接的ip地址。如果是不設(shè)置直接使用%,有時候,我們使用的%表示鏈接地址,但是用戶在本地是無法連接的,則在重新添加一個localhost的權(quán)限。
identified by "密碼": 該用戶的登陸密碼。
with grant option: 將自己擁有的權(quán)限授權(quán)給別人。
三、基本操作
1.增加權(quán)限
grant ALTER,SELECT on *.* to qq@'localhost' identified by "123456" with grant option;
2.刪除權(quán)限
revoke delete on *.* from 'qq'@'localhost';
drop user 'qq'@'localhost';
3.重置權(quán)限
// 修改用戶名稱
rename user 'qq'@'%' to 'jim'@'%';
// 修改用戶密碼
SET PASSWORD FOR 'qq'@'localhost' = PASSWORD('123456');
mysqladmin -uqq -p123456 password 1234abcd
update user set PASSWORD = PASSWORD('1234abcd') where user = 'qq';
4.查詢權(quán)限
show grants for 'qq'@'%';
*有時我們對系統(tǒng)數(shù)據(jù)庫進行了操作,但還是不能達到我們的效果,則可以使用強制刷新
flush privileges;
四、權(quán)限維護
權(quán)限控制主要是出于安全因素,因此需要遵循一下幾個經(jīng)驗原則:
1、只授予能滿足需要的最小權(quán)限,防止用戶干壞事。比如用戶只是需要查詢,那就只給select權(quán)限就可以了,不要給用戶賦予update、insert或者delete權(quán)限。
2、創(chuàng)建用戶的時候限制用戶的登錄主機,一般是限制成指定IP或者內(nèi)網(wǎng)IP段。
3、初始化數(shù)據(jù)庫的時候刪除沒有密碼的用戶。安裝完數(shù)據(jù)庫的時候會自動創(chuàng)建一些用戶,這些用戶默認沒有密碼。
4、為每個用戶設(shè)置滿足密碼復(fù)雜度的密碼。
5、定期清理不需要的用戶?;厥諜?quán)限或者刪除用戶。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: