[精讚] [會員登入]
5398

[Mysql/Mariadb] 密碼設定強度修改

新的mysql對於密碼預設也把原來的規則改得更嚴格,此篇教你修改密碼的設定政策

分享此文連結 //n.sfs.tw/13359

分享連結 [Mysql/Mariadb] 密碼設定強度修改@新精讚
(文章歡迎轉載,務必尊重版權註明連結來源)
2019-10-25 14:12:51 最後編修
2019-06-27 14:26:56 By 張○○
 

自動目錄

新的mysql對於密碼設定多了更多的參數,預設也把原來的規則改得更嚴格,例如要8個字元、至少一個數字、一個英文字母和一個特殊符號。如果不符合規則的情況會報錯:

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

我覺得這樣很煩,想要改規則。

 

OS及作業系統版本

FreeBSD ddnss 11.2-RELEASE-p10

mysql  Ver 8.0.16 for FreeBSD11.2 on amd64 (Source distribution)

 

查看現有參數

進到MYSQL的SHELL中下指令

> show variables like '%password%';
+----------------------------------------------+-----------------+
| Variable_name                                | Value           |
+----------------------------------------------+-----------------+
| caching_sha2_password_auto_generate_rsa_keys | ON              |
| caching_sha2_password_private_key_path       | private_key.pem |
| caching_sha2_password_public_key_path        | public_key.pem  |
| default_password_lifetime                    | 0               |
| disconnect_on_expired_password               | ON              |
| mysql_native_password_proxy_users            | OFF             |
| password_history                             | 0               |
| password_require_current                     | OFF             |
| password_reuse_interval                      | 0               |
| report_password                              |                 |
| sha256_password_auto_generate_rsa_keys       | ON              |
| sha256_password_private_key_path             | private_key.pem |
| sha256_password_proxy_users                  | OFF             |
| sha256_password_public_key_path              | public_key.pem  |
| validate_password.check_user_name            | ON              |
| validate_password.dictionary_file            |                 |
| validate_password.length                     | 8               | <== 8個字元
| validate_password.mixed_case_count           | 1               | <== 大小寫字元數
| validate_password.number_count               | 1               | <== 數字數
| validate_password.policy                     | MEDIUM          | <== 強度政策
| validate_password.special_char_count         | 1               | <== 特殊字元數
+----------------------------------------------+-----------------+
21 rows in set (0.00 sec)

 

其中的強度政策牽涉到會檢查的項目,有三種政策:

0 /LOW 只檢查長度
1 /MEDIUM 檢查長度、英文、數字、特殊字元要照表操課
2 /STRONG 除了上面以外,還要檢查是否是字典檔的字

 

修改規則

基本上只要修改最小長度為4,還有把政策調整為LOW即可,長度的最小值是4,設比4小的話還是會是4。

強度政策調低後,其他的項目可以不必理會

> set global validate_password.policy=0;
> set global validate_password.length=4;
> set global validate_password.special_char_count =0;

調整後規則

| validate_password.length                     | 4               |
| validate_password.mixed_case_count           | 1               |
| validate_password.number_count               | 1               |
| validate_password.policy                     | LOW             |
| validate_password.special_char_count         | 0               |

 

測試

直接修改密碼試試。

Mysql 8修改密碼的方式有變更,原本的password 函數作廢。

要用 alter user 的方法來改

> use mysql;
Database changed
> ALTER USER 'axer'@'localhost' identified BY '123456';
Query OK, 0 rows affected (0.01 sec) <== 成功

 

參考資料

[1] Alvin's Blog 部落格

[2] http://www-creators.com/archives/5574

[3] https://www.opencli.com/mysql/mysql-change-user-password

END

你可能感興趣的文章

[Mysql] 建立叢集式資料庫3/4 -- DB1設置及DB PROXY 使用galera建立Mysql的叢集式資料庫 ,繼續修正第1DB及運作PROXY

[MySQL] FIND_IN_SET函數,把多筆條件判斷弄成字串 SQL 我們如果要查找某個欄位是否為某個值的時候,如果要判斷的條件很多,可以用這個函數

[mysqldump] Mysqldump時出現記憶體錯誤Out of memory 當進行 mysqldump 時出現 Out of memory (Needed xxxxx bytes) 的錯誤,該如何處理?

[Mysql] 修改資料庫預設校對或編碼 修改資料庫預設校對或編碼的方法

[Mysql] 建立叢集式資料庫2/4 -- DB2、DB3設定 使用galera建立Mysql的叢集式資料庫 ,繼續建立第2,第3台DBs

[Mysql/MariaDB] 清除及設定 MySQL 的死連接 mysql 伺服器若有太多的連接,無疑的會耗用非常多的資源,若資源耗盡會影響新的連線,勢必要做一些調整

隨機好文

[jQuery] textarea 的取值和給值 HTML 的 TEXTAREA 標籤若要用 jquery 取值,不能使用 .text() 或 .html() ,使用 .

談借錢 人借錢時手心向上頭向下,人還錢時手心向下頭向上

如何在linux下執行java 原生的java應用程式可以使用簡單的方法在console下面寫出來,適合作簡單的應用

[bc] linux 的計算機 bc 設定小數位數、計算π、次方根 linux 的計算機 bc 設定小數位數、計算π、次方根

好用的3+2碼郵遞區號查詢系統推薦 網路上找到用地址輸入判斷3+2碼郵遞區號的辨識率不高,除了這個網站…