Macの新しいMySQLで6文字のパスワードを持つユーザーを作成する必要があります。 5.7の最低設定では8文字しか使用できないことを知っています。それを回避する方法はありますか?
CREATE USER 'newsier'@'localhost' IDENTIFIED BY 'special'
と入力します
エラーを出力します
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
パスワード検証プラグイン を使用しています。デフォルトでは、8文字以上の長いパスワードのみが許可されます。 @RiggsFollyは、ハッシュの値をチェックできないため、パスワードの事前ハッシュが機能することは正しいです。
ただし、 オプションを変更する を使用する場合は、validate_password_length
システム変数の値を設定する必要があります。設定ファイルでこれを行うか、次のことができます。
SET GLOBAL validate_password_length=6;
最初にmysql -u root -p
でログインし、次の方法で現在のポリシールールを確認します。
# SHOW VARIABLES LIKE 'validate_password%';
+--------------------------------------+--------+
| Variable_name | Value |
+--------------------------------------+--------+
| validate_password_dictionary_file | |
| validate_password_length | 5 |
| validate_password_mixed_case_count | 1 |
| validate_password_number_count | 1 |
| validate_password_policy | MEDIUM |
| validate_password_special_char_count | 1 |
+--------------------------------------+--------+
その後、上記の変数を自由に変更できます。
# SET GLOBAL validate_password_length = 5;
# SET GLOBAL validate_password_number_count = 0;
# SET GLOBAL validate_password_mixed_case_count = 0;
# SET GLOBAL validate_password_special_char_count = 0;
最後に、簡単なパスワードでデータベースとそれにアクセスするユーザーを作成できます。
# CREATE DATABASE test1;
# GRANT ALL PRIVILEGES ON test1.* TO user1@localhost IDENTIFIED BY "pass1";
# FLUSH PRIVILEGES;
その後、パスワードmysql -u user1 -p test1
を使用してpass1
でログインできます
MySQL 5.7 +にはデフォルトでパスワード検証システムがあります。ポリシーに厳密に準拠したくなく、独自に割り当てる必要がある場合は、パスワード検証を無効にして、mysqldプロセスを再起動します。
編集my.cnfファイル:
vi /etc/my.cnf
in [mysqld]
validate-password=off
ファイルを保存してからrestartプロセス
Sudo service mysqld restart
or
systemctl restart mysqld
次に、ルートパスワードの変更以下を使用して、ルートパスワードの例外をスローしない手順に従います。
mysql_secure_installation
or
/usr/bin/mysql_secure_installation
インストールを初回で実行していて、仮パスワードを知りたい場合は、次を使用して初回パスワード:
grep 'temporary password' /var/log/mysqld.log
下のコメントボックスで、同じことについてのコメントをお聞かせください。
このように事前にハッシュ化されたパスワードを使用することで、それを回避できると思います:-
CREATE USER 'newsier'@'localhost' IDENTIFIED WITH mysql_native_password
AS '*0D3CED9BEC10A777AEC23CCC353A8C08A633045E';
しかし、これは実際にパスワードを設定する前にspecial
を正しくハッシュする必要があることを意味します。これにより、プレーンテキストバージョンを使用できます。
次のコマンドを実行することにより、過度に厳しいと思われるパスワード「プラグイン」を完全に無効にすることができます:uninstall plugin validate_password
再び必要になった場合は、次の方法でオンに戻すことができます:INSTALL PLUGIN validate_password SONAME 'validate_password.so'
オプションで、無効にしてパスワードを設定し、再度有効にすることができます。
uninstall plugin validate_password;
CREATE USER 'newsier'@'localhost' IDENTIFIED BY 'special';
INSTALL PLUGIN validate_password SONAME 'validate_password.so';
参考文献:
現在のパスワードポリシールールを確認するには
SHOW VARIABLES LIKE 'validate_password%';
次に、これらの変数の新しい値を設定します。
SET GLOBAL validate_password_length = 6 // that you like
SET GLOBAL validate_password_policy = 'LOW'