Documentation Home
MySQL 5.6 リファレンスマニュアル
Download this Manual
PDF (US Ltr) - 27.1Mb
PDF (A4) - 27.2Mb
HTML Download (TGZ) - 7.2Mb
HTML Download (Zip) - 7.2Mb


6.3.8.2 古いネイティブ認証プラグイン

MySQL には、ネイティブ認証 (つまり、mysql.user テーブルの Password カラムに格納されたパスワードと照合する認証) を実装する 2 つのプラグインが含まれています。このセクションでは、古い (4.1 よりも前の) パスワードハッシュ化方式を使用して、mysql.user テーブルと照合する認証が実装された mysql_old_password について説明します。ネイティブのパスワードハッシュ化方式を使用した認証が実装された mysql_native_password については、セクション6.3.8.1「ネイティブ認証プラグイン」を参照してください。これらのパスワードハッシュ化方式については、セクション6.1.2.4「MySQL でのパスワードハッシュ」を参照してください。

注記

4.1 よりも前のハッシュ化方式を使用したパスワードは、ネイティブのパスワードハッシュ化方式を使用したパスワードよりもセキュアではありません。4.1 よりも前のパスワードは非推奨であり、これらのサポートは今後の MySQL リリースで削除される予定です。アカウントのアップグレード手順については、セクション6.3.8.3「4.1 よりも前のパスワードハッシュ方式と mysql_old_password プラグインからの移行」を参照してください。

mysql_old_password ネイティブ認証プラグインには、下位互換性があります。MySQL 5.5.7 よりも古いクライアントでは、認証プラグインがサポートされていませんが、ネイティブ認証プロトコルは使用されます。そのため、MySQL 5.5.7 以上からサーバーに接続できます。

次の表に、サーバー側とクライアント側のプラグイン名を示します。

表 6.9 MySQL の古いネイティブ認証プラグイン

サーバー側のプラグイン名 mysql_old_password
クライアント側のプラグイン名 mysql_old_password
ライブラリオブジェクトファイル名 なし (プラグインは組み込み済み)

プラグインは、クライアントとサーバーの両方の形式で存在します。

  • サーバー側のプラグインはサーバーに組み込まれているため、明示的にロードする必要はなく、アンロードしても無効にすることができません。

  • クライアント側のプラグインは、MySQL 5.5.7 の時点で libmysqlclient クライアントライブラリに組み込まれ、そのバージョン以降では libmysqlclient に対してリンクされている任意のプログラムで使用可能です。

  • MySQL クライアントプログラムは、--default-auth オプションを使用して、mysql_old_password プラグインを明示的に指定できます。

    shell> mysql --default-auth=mysql_old_password ...

アカウント行にプラグイン名が指定されていない場合、Password カラム内のパスワードハッシュ値でネイティブのハッシュ化方式と、4.1 よりも前の古いハッシュ化方式のどちらが使用されるのかに応じて、サーバーは mysql_native_passwordmysql_old_password のいずれかのプラグインを使用してアカウントを認証します。クライアントは、アカウント行の Password カラム内のパスワードと一致する必要があります。

MySQL のプラガブル認証に関する一般的な情報については、セクション6.3.7「プラガブル認証」を参照してください。


User Comments
Sign Up Login You must be logged in to post a comment.