MySQL 8.0 リファレンスマニュアル MySQL NDB Cluster 8.0 を含む

このページは機械翻訳したものです。

6.1.2.1 パスワードセキュリティーのためのエンドユーザーガイドライン

MySQL ユーザーは、パスワードをセキュアな状態にするために次のガイドラインを使用することをお勧めします。

クライアントプログラムを実行して MySQL サーバーに接続する場合、ほかのユーザーからの検出によって公開されるような方法でパスワードを指定することはお勧めできません。 クライアントプログラムを実行するときにパスワードを指定するために使用できる方法と、それぞれの方法のリスクの評価について、次の一覧で示します。 簡単に言えば、もっとも安全な方法は、クライアントプログラムがパスワードを求めるプロンプトを出すようにするか、適切に保護されたオプションファイルにパスワードを指定する方法です。

Unix の場合、mysql クライアントは実行済みステートメントを履歴ファイルに書き込みます (セクション4.5.1.3「mysql クライアントロギング」を参照してください)。 デフォルトでは、このファイルは .mysql_history という名前で、ユーザーのホームディレクトリに作成されます。 パスワードは、CREATE USERALTER USER などの SQL ステートメントにプレーンテキストで記述できるため、これらのステートメントを使用すると、履歴ファイルに記録されます。 このファイルを安全に保持するには、以前 .my.cnf ファイルについて説明したのと同じ方法である制限アクセスモードを使用します。

コマンドインタプリタで履歴が保持されている場合、コマンドが保存されるすべてのファイルには、コマンドラインで入力された MySQL パスワードが含まれます。 たとえば、bash~/.bash_history を使用します。 そのようなすべてのファイルは、制限アクセスモードにするようにしてください。