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


6.3.8.1 ネイティブ認証プラグイン

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

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

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

表 6.8 MySQL ネイティブパスワード認証プラグイン

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

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

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

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

  • MySQL クライアントプログラムでは、デフォルトで mysql_native_password が使用されます。--default-auth オプションを使用すると、プラグインを明示的に指定できます。

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

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

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


User Comments
User comments in this section are, as the name implies, provided by MySQL users. The MySQL documentation team is not responsible for, nor do they endorse, any of the information provided here.
Sign Up Login You must be logged in to post a comment.