MySQL 8.0外壳/MySQL Shellスタ/プラガブルパスワドストア

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

4.4プラガブルパスワドストア

MySQL壳をより柔軟かつセキュアに使用するために,キーチェーンなどのシークレットストアを使用してサーバー接続のパスワードを永続化できます。対話形式で接続のパスワードを入力すると,接続の資格証明としてサーバーURLとともに格納されます。例:

mysql-js> \connect user@localhost:3310创建一个会话到“user@localhost:3310”请提供密码为“user@localhost:3310”:********保存密码为“user@localhost:3310”?[Y]es/[N]o/Ne[v]er(默认否):Y

サーバーURLのパスワードが格納されると,MySQL壳はセッションを開くたびに,構成済の秘密商店助手からパスワードを取得して,対話形式でパスワードを入力せずにサーバーにログインします。MySQL Shellによって実行されるスクリプトにいても同じことが保持されます。秘密商店助手が構成されていない場合,パスワードは対話形式でリクエストされます。

重要

MySQL壳では,サーバーURLとパスワードはシークレットストアを介してのみ永続化され,パスワード自体は永続化されません。

パスワドは,手動で入力した場合にのみ永続化されます。サバuriのような接続文字列を使用して,またはmysqlshの実行時にコマンドランでパスワドを指定した場合,そのパスワドは永続化されません。

MySQL Shellへの接続に使用できるパスワドの最大長は128文字です。

MySQL Shellでは,次のシクレットストアの組込みサポトが提供されます:

  • MySQLサーバーでサポートされているすべてのプラットフォーム(MySQLクライアントパッケージがインストールされている場合)で使用可能なMySQL登录路径で,永続記憶域を提供します。mysql_config_editor - MySQL構成ユティリティを参照してください。

  • macOSキチェン。“ここ”を参照してください。

  • Windows APIにいては,“ここ”を参照してください。

MySQL壳が対話モードで実行されている場合,新しいセッションが開始され,ユーザーにパスワードの入力を求めるプロンプトが表示されるたびにパスワードの取得が実行されます。プロンプトが表示される前に,秘密商店助手に対して,セッションURLを使用してパスワードをクエリーします。一致するものが見かった場合は,このパスワドを使用してセッションを開きます。取得したパスワードが無効な場合は,メッセージがログに追加され,パスワードがシークレットストアから消去され,MySQL壳によってパスワードの入力を求められます。

MySQL Shellが非対話モドで実行されている場合(たとえば,——no-wizardが使用された場合)、パスワドの取得は対話モドと同じ方法で実行されます。ただし,この場合,秘密商店助手で有効なパスワードが見つからないと,MySQL壳はパスワードなしでセッションを開こうとします。

サーバーURLのパスワードは,MySQLサーバーへの接続が成功し,パスワードがシークレットストアヘルパーによって取得されなかった場合は常に格納できます。パスワドを格納するかどうかは,ここで説明するcredentialStore.savePasswordsおよびcredentialStore.excludeFiltersに基づいて決定されます。

パスワドの自動格納および自動取得は,次の場合に実行されます:

  • mysqlshは,最初のセッションの確立時に接続オプションを使用して起動されます

  • 組込みの\连接コマンドを使用する場合

  • shell.connect ()メソッドを使用する場合

  • 接続が必要なAdminAPIメソッドを使用する場合