マップされたMySQLユーザーへの接続

マップされたMySQLユーザーでDBシステムに接続するには、最初にMySQLユーザーをローカル、フェデレーテッドまたはプロビジョニングされたユーザーにマップしてから、マップされたMySQLユーザーを使用してDBシステムに接続します。

  1. MySQLユーザーをローカル、フェデレーテッドまたはプロビジョニングされたユーザーにマップして、MySQLユーザーのアイデンティティおよび権限を取得します。
  2. MySQLユーザーがローカル、フェデレーテッドまたはプロビジョニングされたユーザーにマップされた状態でDBシステムに接続します。ローカル、フェデレーテッドまたはプロビジョニングされたユーザーにマップされたMySQLユーザーとの接続を参照してください。

MySQLユーザーのローカル・ユーザーへのマッピング

MySQLユーザーをローカル・ユーザーにマップして、ローカル・ユーザーにDBシステムのMySQL Serverへのアクセス権を付与します。

コマンドライン・クライアントの使用

MySQLクライアントやMySQLシェルなどのコマンドライン・クライアントを使用して、MySQLユーザーを作成し、それをローカル・ユーザーにマップします。

このタスクでは次が必要です:
  • ローカル・ユーザーおよびユーザーが定義されているテナンシのOCID。
  • 実行中のDBシステム。
  • コンピュート・インスタンスまたはローカル・マシンからDBシステムへのコマンドライン・アクセス権を付与する、正しく構成されたVCN。
  • 正しく構成されたコマンドライン・クライアント。
  • authentication_ociプラグインの使用に必要な設定については、前提条件を参照してください。
コマンドライン・クライアントを使用してMySQLユーザーをローカル・ユーザーにマップするには、次を実行します:
  1. 管理者としてDBシステムに接続します。
  2. 次のコマンドを実行して、MySQLユーザー<MySQLUser>を作成し、ローカル・ユーザー<LocalUserOCID>にマップします。
    CREATE USER '<MySQLUser>'@'%' IDENTIFIED WITH 'authentication_oci' AS 
    '{"tenancy" : "<TenancyOCID>",
      "user" : "<LocalUserOCID>"}';
    • CREATE USER: 正しい資格証明を使用して任意のホストから接続できるユーザー<MySQLUser>を作成します。ホストは、特定のホストまたはホストのグループに制限できます。CREATE USERを参照してください。
    • authentication_oci: MySQL Serverの認証プラグインの名前を指定します。
    • tenancy: ローカル・ユーザー<LocalUserOCID>が作成されたテナンシのOCIDを指定します。
    • user: MySQLユーザーのマッピング先のローカル・ユーザー<LocalUserOCID>のOCID (<MySQLUser>)を指定します。
MySQLユーザー<MySQLUser>が作成され、ローカル・ユーザーOCID <LocalUserOCID>にマップされます。

MySQLユーザーのフェデレーテッド・ユーザーへのマッピング

MySQLユーザーをフェデレーテッド・ユーザーにマップして、フェデレーテッド・ユーザーにDBシステムのMySQL Serverへのアクセス権を付与します。

フェデレーテッド・ユーザーは、アイデンティティ・プロバイダに属し、フェデレーションを介してOracle Cloud Infrastructureサービスにログインするユーザーです。

コマンドライン・クライアントの使用

MySQLクライアントやMySQLシェルなどのコマンドライン・クライアントを使用して、MySQLユーザーを作成し、それをフェデレーテッド・ユーザーにマップします。

このタスクでは次が必要です:
  • Oracle Cloud Infrastructureサービスにログインするためのフェデレーテッド・ユーザーおよびテナンシのユーザーID。
  • 実行中のDBシステム。
  • コンピュート・インスタンスまたはローカル・マシンからDBシステムへのコマンドライン・アクセス権を付与する、正しく構成されたVCN。
  • 正しく構成されたコマンドライン・クライアント。
  • authentication_ociプラグインの使用に必要な設定については、前提条件を参照してください。
コマンドライン・クライアントを使用してMySQLユーザー<MySQLUser>を作成し、フェデレーテッド・ユーザー<UserIdFromIdpDomain>にマップするには、次を実行します:
  1. 管理者としてDBシステムに接続します。
  2. 次のコマンドを実行して、MySQLユーザーを作成し、フェデレーテッド・ユーザーにマップします:
    CREATE USER '<MySQLUser>'@'%' IDENTIFIED WITH 'authentication_oci' AS 
    '{"tenancy" : "<TenancyOCID>",
      "user" : "<UserIdFromIdpDomain>"}';
    • CREATE USER: 正しい資格証明を使用して任意のホストから接続できるユーザー<MySQLUser>を作成します。ホストは、特定のホストまたはホストのグループに制限できます。CREATE USERを参照してください。
    • authentication_oci: MySQL Serverの認証プラグインの名前を指定します。
    • tenancy: フェデレーテッド・ユーザー<UserIdFromIdpDomain>が作成されたアイデンティティ・プロバイダにフェデレートされるテナンシのOCIDを指定します。
    • user: MySQLユーザーのマッピング先のフェデレーテッド・ユーザーのユーザーID (<MySQLUser>)を指定します。これは、シングル・サインオンに使用されるのと同じユーザーIDです。
MySQLユーザー<MySQLUser>が作成され、フェデレーテッド・ユーザー<UserIdFromIdpDomain>にマップされます。

MySQLユーザーのプロビジョニングされたユーザーへのマッピング

MySQLユーザーをプロビジョニングされたユーザーにマップして、プロビジョニングされたユーザーにDBシステムのMySQL Serverへのアクセス権を付与します。

プロビジョニングされたユーザーは、Oracle Cloud Infrastructureでアイデンティティ・プロバイダによって体系的にプロビジョニングされます。プロビジョニングされたユーザーは、Oracle Cloud Infrastructure資格証明を保持できますが、コンソール・パスワードは保持できません。

コマンドライン・クライアントの使用

MySQLクライアントやMySQLシェルなどのコマンドライン・クライアントを使用して、MySQLユーザーを作成し、それをプロビジョニングされたユーザーにマップします。

このタスクでは次が必要です:
  • プロビジョニングされたユーザーおよびOracle Cloud InfrastructureサービスにログインするためのテナンシのユーザーIDまたはユーザーOCID。
  • 実行中のDBシステム。
  • コンピュート・インスタンスまたはローカル・マシンからDBシステムへのコマンドライン・アクセス権を付与する、正しく構成されたVCN。
  • 正しく構成されたコマンドライン・クライアント。
  • authentication_ociプラグインの使用に必要な設定については、前提条件を参照してください。
コマンドライン・クライアントを使用してMySQLユーザーをプロビジョニングされたユーザーにマップするには、次を実行します:
  1. 管理者としてDBシステムに接続します。
  2. APIキーベース認証の場合は、次のコマンドを実行して、MySQLユーザーを作成し、プロビジョニングされたユーザーにマップします:
    CREATE USER '<MySQLUser>'@'%' IDENTIFIED WITH 'authentication_oci' AS 
    '{"tenancy" : "<TenancyOCID>",
      "user" : "<ProvisionedUserOCID>"}';
    • CREATE USER: 正しい資格証明を使用して任意のホストから接続できるユーザー<MySQLUser>を作成します。ホストは、特定のホストまたはホストのグループに制限できます。CREATE USERを参照してください。
    • authentication_oci: MySQL Serverの認証プラグインの名前を指定します。
    • tenancy: プロビジョニングされたユーザー<ProvisionedUserOCID>が作成されたテナンシのOCIDを指定します。
    • user: プロビジョニングされたユーザー<ProvisionedUserOCID>のOCIDを指定します。このOCIDには、MySQLユーザーのマッピング先である<MySQLUser>を指定します。
  3. IAMセキュリティ・トークン・ベースの認証の場合、次のコマンドを実行して、MySQLユーザーを作成し、プロビジョニングされたユーザーにマップします:
    CREATE USER '<MySQLUser>'@'%' IDENTIFIED WITH 'authentication_oci' AS 
    '{"tenancy" : "<TenancyOCID>",
      "user" : "<UserIdFromIdpDomain>"}';
    • CREATE USER: 正しい資格証明を使用して任意のホストから接続できるユーザー<MySQLUser>を作成します。ホストは、特定のホストまたはホストのグループに制限できます。CREATE USERを参照してください。
    • authentication_oci: MySQL Serverの認証プラグインの名前を指定します。
    • tenancy: プロビジョニングされたユーザー<UserIdFromIdpDomain>が作成されたテナンシのOCIDを指定します。
    • user: MySQLユーザーのマッピング先となるプロビジョニングされたユーザーのユーザーID (<MySQLUser>)を指定します。これは、シングル・サインオンに使用されるのと同じユーザーIDです。
MySQLユーザーが作成され、プロビジョニングされたユーザーにマップされます。

ローカル、フェデレーテッドまたはプロビジョニングされたユーザーにマップされたMySQLユーザーへの接続

MySQLユーザーがローカル、フェデレーテッドまたはプロビジョニングされたユーザーにマップされたDBシステムに接続します。マップされたMySQLユーザーは、ローカル、フェデレーテッドまたはプロビジョニングされたユーザーに、MySQLユーザーのアイデンティティと権限を提供します。ローカル、フェデレーテッドおよびプロビジョニングされたユーザーは、IAMセキュリティ・トークンを使用してDBシステムに接続できます。ただし、APIキー・ペアを使用してDBシステムに接続できるのは、ローカルおよびプロビジョニングされたユーザーのみです。

コマンドライン・クライアントの使用

MySQLクライアントやMySQLシェルなどのコマンドライン・クライアントを使用して、ローカル、フェデレーテッドまたはプロビジョニングされたユーザーにマップされているMySQLユーザーを使用してDBシステムに接続します。

このタスクでは次が必要です:
  • 実行中のDBシステム。
  • 構成ファイル。SDKおよびCLIの構成ファイルを参照してください。
  • コンピュート・インスタンスまたはローカル・マシンからDBシステムへのコマンドライン・アクセス権を付与する、正しく構成されたVCN。
  • authentication_ociプラグインの使用に必要な設定については、前提条件を参照してください。
マップされたユーザー<MySQLUser>を使用してDBシステムに接続するには、次のいずれかのステップを実行します:
  1. MySQLクライアントから: 次のコマンドを実行します:
    mysql -h <DBSystemEndpointIPAddress> --port <PortNumber> --oci-config-file=<PathToOciConfig> 
    --authentication-oci-client-config-profile=<ConfigProfile> -u <MySQLUser> 
    • h: DBシステムのエンドポイントのIPアドレスを指定します。
    • port: DBシステムがリスニングしているポートを指定します。デフォルト値は3306です。
    • oci-config-file: (オプション)構成ファイルの場所を指定します。このオプションを指定しない場合、MySQLクライアントは、他のすべてのオペレーティング・システムの構成をデフォルトの場所(Windowsシステムの場合は%HOMEDRIVE%%HOMEPATH%\.oci\config 、その他すべてのオペレーティング・システムの場合は~/.oci/config)から読み取ります。
    • authentication-oci-client-config-profile: (オプション)構成ファイルで指定する構成プロファイルの名前を指定します。構成オプションMySQLクライアントが認証に使用する必要があります。このオプションを指定しない場合、MySQLクライアントは、DEFAULTプロファイルに記載されている構成オプションを読み取ります。
    • u: マップされたMySQLユーザーのユーザー名<MySQLUser>を指定します。
  2. MySQLシェルから 8.0: 次のコマンドを実行します:
    mysqlsh <MySQLUser>@<Hostname> --auth-method=authentication_oci_client
    • <MySQLUser>: マップされたMySQLユーザーのユーザー名を指定します。
    • <Hostname>: DBシステムのエンドポイントのIPアドレスを指定します。
    • auth-method=authentication_oci_client: リクエストの認証に使用されるクライアント・プラグインの名前を指定します。MySQLシェルではデフォルトのCLI構成が使用されます。
      ノート

      この認証方法では、クラシックMySQLプロトコルのみがサポートされます。
    ノート

    MySQL Shell 8.0.33以降では、oci.configFileオプションを使用して構成ファイルの場所を構成できます。
  3. MySQLシェル8.1以降から: 次のコマンドを実行します:
    mysqlsh <MySQLUser>@<Hostname> --oci-config-file=<PathToOciConfig> 
    --authentication-oci-client-config-profile=<ConfigProfile> --auth-method=authentication_oci_client
    • <MySQLUser>: マップされたMySQLユーザーのユーザー名を指定します。
    • <Hostname>: DBシステムのエンドポイントのIPアドレスを指定します。
    • oci-config-file: (オプション)構成ファイルの場所を指定します。このオプションを指定しない場合、MySQLシェルは、他のすべてのオペレーティング・システムの構成をデフォルトの場所(Windowsシステムの場合は%HOMEDRIVE%%HOMEPATH%\.oci\config 、その他すべてのオペレーティング・システムの場合は~/.oci/config)から読み取ります。
    • authentication-oci-client-config-profile: (オプション)構成ファイルで指定する構成プロファイルの名前を指定します。構成ファイルの構成オプションMySQLシェルは認証に使用します。このオプションを指定しない場合、MySQLシェルは、DEFAULTプロファイルに記載されている構成オプションを読み取ります。
    • auth-method=authentication_oci_client: リクエストの認証に使用されるクライアント・プラグインの名前を指定します。
      ノート

      この認証方法では、クラシックMySQLプロトコルのみがサポートされます。
MySQLクライアントまたはMySQLシェルは、指定された資格証明を使用してDBシステムに接続します。