前提条件

authentication_ociプラグインを使用するには、認証キー・ペア、構成ファイルおよび適切に定義されたポリシー・ステートメントが必要です。

authentication_ociプラグインを使用するには、次のものが必要です:

  • 次のいずれかの資格証明:
    • APIキー・ペア: ローカルまたはプロビジョニングされたユーザーは、IAMおよびAPIフィンガープリントに正しく登録されているパブリック- プライベートAPIキー・ペアを使用できます。個々のユーザーおよびマップされたグループ・メンバーごとに、キー・ペアとフィンガープリントが必要です。必要なキーとOCIDを参照してください。
    • IAMセキュリティ・トークン: ローカル、フェデレーテッドまたはプロビジョニングされたユーザーは、Oracle Cloud Infrastructureコマンドライン・インタフェースを使用して生成されたIAMセキュリティ・トークンを使用できます。IAMセキュリティ・トークンの生成を参照してください。
  • 有効なフィンガープリントおよびkey_file値を含む構成ファイル。IAMセキュリティ・トークンを使用した認証の場合は、有効なsecurity_token_file値を指定します。SDKおよびCLIの構成ファイルを参照してください。
  • 接続する各テナンシに定義されている次のポリシー・ステートメント:
    Allow service mysql_dp_auth to {AUTHENTICATION_INSPECT, GROUP_MEMBERSHIP_INSPECT, 
      DYNAMIC_GROUP_INSPECT} IN TENANCY

    このポリシー・ステートメントは、テナンシ全体をカバーするようにルート・コンパートメントにアタッチする必要があります。これを行うには、ポリシーを追加するときにルート・コンパートメントを選択し、IN TENANCYパラメータを使用する必要があります。IN TENANCYのかわりにIN COMPARTMENT <CompartmentName>を持つサブコンパートメントに作成されている場合、これは機能しません。

    前述のポリシーはバージョン9.4.0で非推奨になり、新しいバージョンで削除されます。バージョン9.4.0以降では、次のポリシーを使用することをお薦めします。
    Allow any-user to {AUTHENTICATION_INSPECT, GROUP_MEMBERSHIP_INSPECT, 
      DYNAMIC_GROUP_INSPECT} in tenancy where request.principal.type = 'mysqldbsystem'
    ノート

    異なるテナンシ間でプリンシパルを使用する場合は、次に示すように、ターゲット・テナンシ(ユーザーおよびグループが定義されている場所)にAdmitポリシー、およびリソース(MySQL HeatWave DBシステム)がインスタンス化されるテナンシのEndorseポリシーが必要です。
    • ユーザーおよびグループを含むターゲット・テナンシで次を定義します:
      Define tenancy <resource_tenancy_name> AS <resource_tenancy_OCID>
      Admit any-user of tenancy <resource_tenancy_name> TO {AUTHENTICATION_INSPECT, 
        GROUP_MEMBERSHIP_INSPECT, DYNAMIC_GROUP_INSPECT} in tenancy 
        where request.principal.type = 'mysqldbsystem'
    • DBシステムを含むリソース・テナンシで次を定義します:
      Define tenancy <target_tenancy_name> AS <target_tenancy_OCID>
      Endorse any-user to {AUTHENTICATION_INSPECT, GROUP_MEMBERSHIP_INSPECT, 
        DYNAMIC_GROUP_INSPECT} in tenancy <target_tenancy_name> 
        where request.principal.type = 'mysqldbsystem'

関連トピック

IAMセキュリティ・トークンの生成

ローカル、フェデレーテッドまたはプロビジョニングされたユーザーは、IAMセキュリティ・トークンを使用して、authentication_ociプラグインを介して認証できます。

CLIの使用

Oracle Cloud Infrastructureコマンドライン・インタフェースを使用して、IAMセキュリティ・トークンを生成します。

  1. Oracle Cloud Infrastructureコマンドライン・インタフェースで次のコマンドを実行します。
    oci session authenticate
  2. プロンプトが表示されたら、地域を選択します。
    Webブラウザが起動します。
  3. ブラウザで、ユーザーの資格証明を入力します。
  4. コマンドライン・インタフェースで作成するプロファイル名を入力します。
    IAMセキュリティ・トークンはエフェメラル・キー・ペアとともに生成されます。認証情報は、.configファイルに保存されます。デフォルトでは、セキュリティ・トークンは1時間で期限切れになります。
  5. (オプション)セキュリティ・トークン(有効期間内)を1時間リフレッシュするには、次のコマンドを実行します。
    oci session refresh --profile <profile_name>
    最大24時間までトークンをリフレッシュできます。