最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

mysql之validate_password_policy的使用

 更新時間:2023年05月30日 09:56:55   作者:獨行俠_阿濤  
這篇文章主要介紹了mysql之validate_password_policy的使用,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

前面長篇大論,大刀闊斧,事無巨細地講解了mysql在centos上的安裝。

但是呢,上一篇遺留一個問題,就是mysql修改密碼時候遇到的一個問題:密碼校驗策略。

引用多篇文章的內容,自己梳理了一下,添加了一點自己的理解。老樣子,請看大屏幕:

前言

validate_password插件是mysql5.6以后可以引入的一個新密碼校驗插件(網友說的,同時還說要用這個插件至少要求mysql5.6.6之后的版本,沒啥重要的,就沒去驗證了),在mysql5.7之后會自動安裝的(這個是真的,我裝的5.7.21是這樣的)。

validate_password_policy是隨著validate_password插件誕生而誕生的,換句話說如果沒有安裝validate_password插件,就不用看下面的內容了。

從創(chuàng)建用戶說起:如我們在mysql中可以用grant all on *.* to userd@'localhost' identified by '123'; 來創(chuàng)建一個userd用戶,雖然用戶是創(chuàng)建成功了,但是這個用戶的密碼強度太低了非常容易被破解;為了把問題解決在搖籃里,最好是在創(chuàng)建用戶時就驗證密碼強度,如果強度達不到要求就不允許創(chuàng)建。

為了達到這個目地validate_password插件應運而生,如果沒有裝過validate_password插件,可以如下安裝(未測試過):

install plugin valaidte_password soname 'validate_password.so';

密碼校驗策略典型例子

第一次安裝完mysql不管是用臨時密碼登入還是通過免密方式修改密碼登入之后,如果沒有馬上修改密碼,而有其他的對數(shù)據(jù)庫的操作動作都會報錯:

ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

這個時候如果直接修改密碼:

alter user 'root'@'localhost' identified by '123456789';

就會觸發(fā)mysql的安全校驗問題了:

ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

validate_password_policy作用

判斷修改密碼時候新密碼是否符合當前的策略,不滿足報錯,不讓修改。

validate_password_policy類型

PolicyTests Performed
0 or LOWLength
1 or MEDIUMLength; numeric, lowercase/uppercase, and special characters
2 or STRONGLength; numeric, lowercase/uppercase, and special characters; dictionary file

用于控制validate_password行為系統(tǒng)參數(shù)

這些參數(shù)是要安裝好validate_password 插件后才能通過show variables like 'validate_password%';看到。

001、validate_password_policy 這個參數(shù)用于控制validate_password的驗證策略 0-->low  1-->MEDIUM  2-->strong。

002、validate_password_length密碼長度的最小值(這個值最小要是4)。

003、validate_password_number_count 密碼中數(shù)字的最小個數(shù)。

004、validate_password_mixed_case_count大小寫的最小個數(shù)。

005、validate_password_special_char_count 特殊字符的最小個數(shù)。

006、validate_password_dictionary_file 字典文件

查看所有的validate_password相關的參數(shù)值

修改策略方式

set global validate_password_policy=0;

策略解釋

0 or LOW

校驗級別最低,只校驗密碼長度,只要長度跟validate_password_length一樣即可,默認長度是8位。

可以通過:

select @@validate_password_length;

來查詢當前設置的密碼長度。

validate_password_length最小值是4位,組成如下:

validate_password_number_count
+ validate_password_special_char_count
+ (2 * validate_password_mixed_case_count)

其中,validate_password_number_count指定了密碼中數(shù)據(jù)的長度,validate_password_special_char_count指定了密碼中特殊字符的長度,validate_password_mixed_case_count指定了密碼中大小字母的長度。

這些參數(shù),默認值均為1,所以validate_password_length最小值為4,如果你顯性指定validate_password_length的值小于4,盡管不會報錯,但validate_password_length的值將設為4。

直接設置validate_password_length

set global validate_password_length=7

間接設置validate_password_length

  • validate_password_number_count
  • validate_password_special_char_count
  • validate_password_mixed_case_count

中任何一個值被修改了,則validate_password_length將進行動態(tài)修改。

修改方式

以validate_password_mixed_case_count為例子,另外幾個一樣的修改方式:

set global validate_password_mixed_case_count=2

注意

動態(tài)修改,不一定會直接影響到validate_password_length的長度,如果validate_password_length已經是最小值時才會被動態(tài)修改掉,否則不會。

1 or MEDIUM

這個時候首先要滿足的是validate_password_policy=0時的驗證要求。

然后現(xiàn)去驗證密碼中的數(shù)字個數(shù),大小寫個數(shù),特殊字符個數(shù)。

這些又分別由validate_password_number_count,validate_password_mixed_case_count,validate_password_special_char_count 這幾個參數(shù)來控制。

2 or STRONG

這個時候必須先滿足0,1的要求,然后它還追加了一個,對于密碼中任意連續(xù)4個(或4個讓上)字符不得是字典中的單詞(validate_password_dictionary_file)

注意

  • validate_password_number_count
  • validate_password_special_char_count
  • validate_password_mixed_case_count

三個的改動只會直接修改掉已經處在最小值的valide_password_length的值。

總結

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

最新評論

遵义市| 肇庆市| 偃师市| 祁东县| 安义县| 公主岭市| 长治县| 麻城市| 福鼎市| 紫阳县| 桃江县| 吴堡县| 丹寨县| 刚察县| 南昌市| 运城市| 汉中市| 金川县| 阜阳市| 屏东县| 山阴县| 鄱阳县| 文成县| 南丰县| 青田县| 凭祥市| 武功县| 常州市| 武乡县| 固阳县| 互助| 宜城市| 苏尼特左旗| 灵宝市| 紫云| 凭祥市| 东莞市| 藁城市| 全椒县| 博爱县| 旬阳县|