リソース・プリンシパルを使用したOracle Cloud Infrastructureリソースへのアクセス
Autonomous Databaseでは、Oracle Cloud Infrastructureリソース・プリンシパルを使用できます。お客様またはテナンシ管理者は、Oracle Cloud Infrastructureポリシーと、リソース・プリンシパルがOracle Cloud Infrastructureリソースにアクセスできるようにする動的グループを定義します。資格証明オブジェクトを作成する必要はなく、Autonomous Databaseは、指定したOracle Cloud Infrastructureリソースへのアクセスに使用するリソース・プリンシパル資格証明を作成および保護します。
- リソース・プリンシパルを使用したOracle Cloud Infrastructureリソースへのアクセスについて
リソース・プリンシパルを使用して、Oracle Cloud Infrastructureリソースの認証およびアクセスを行うことができます。 - Autonomous Databaseでリソース・プリンシパルを使用するための前提条件の実行
リソース・プリンシパルを使用してOracle Cloud Infrastructureリソースを呼び出す前に、Oracle Cloud Infrastructureテナンシ管理者が、リソース・プリンシパル権限を定義するOracle Cloud Infrastructureポリシー、動的グループおよびルールを作成する必要があります。 - Oracle Cloud Infrastructureリソースにアクセスするためのリソース・プリンシパルの有効化
次のステップを実行して、Autonomous Databaseでリソース・プリンシパルを有効にします。 - Autonomous Databaseでのリソース・プリンシパルの無効化
すべてのAutonomous Databaseユーザーまたは指定したユーザーのリソース・プリンシパルを無効にするステップを示します。 - DBMS_CLOUDでのリソース・プリンシパルの使用
DBMS_CLOUD
コールでリソース・プリンシパル資格証明を指定すると、データベースはOracle Cloud Infrastructureリクエストを認証し、データベースはOracle Cloud Infrastructureリソースにアクセスするための資格証明を提供します。
親トピック: リソースにアクセスするためのポリシーとロールの構成
リソース・プリンシパルを使用したOracle Cloud Infrastructureリソースへのアクセスについて
リソース・プリンシパルを使用して、Oracle Cloud Infrastructureリソースを認証およびアクセスできます。
リソース・プリンシパルは、データベースが他のOracle Cloud Infrastructureサービスに対して自身を認証できるようにする一時セッション・トークンおよびセキュアな資格証明で構成されます。リソース・プリンシパルを使用してサービスにアクセスする場合、Autonomous Databaseの資格証明とともに格納されるトークンは、動的グループにアクセス権が付与されているリソースに対してのみ有効です。
リソース・プリンシパルを使用するには、ユーザーまたはテナンシ管理者が、リソース・プリンシパルを使用してOracle Cloud InfrastructureリソースにアクセスできるようにするOracle Cloud Infrastructureポリシーおよび動的グループを定義します。資格証明オブジェクトを作成する必要はなく、Autonomous Databaseは、指定したOracle Cloud Infrastructureリソースへのアクセスに使用するリソース・プリンシパル資格証明を作成および保護します。
たとえば、Autonomous Databaseの使用中に、Oracle Cloud Infrastructureリソースを使用して次のことを実行できます:
- オブジェクト・ストレージ・バケットからデータにアクセスし、データに対してなんらかの操作を実行し、変更したデータをオブジェクト・ストレージ・バケットに書き戻します。
-
ボールト、キーまたはシークレットにアクセスします。
- 作業リクエストをリストするか、作業リクエスト・エラーをリストします。
データベースを操作する場合、データベース・ユーザーとして認証してアクセスします。Autonomous DatabaseユーザーにはOracle Cloud Infrastructure Identity and Access Management (IAM)アイデンティティがないため、Autonomous Databaseユーザーは、データベース資格証明を使用してOracle Cloud Infrastructureサービスにアクセスできません。リソース・プリンシパルを使用しない場合は、Oracle Cloud Infrastructureリソースにアクセスするための資格証明を取得し、Autonomous Databaseからリソースにアクセスするための資格証明オブジェクトを作成する必要があります。
リソース・プリンシパルにより、Oracle Cloud Infrastructureサービスに対するアクションの実行が許可されるリソースを認可できます。各リソースには、それぞれのアイデンティティがあり、追加された証明書を使用して認証を行います。これらの証明書は自動的に作成され、リソースに割り当てられ、ローテーションされるため、リソースにアクセスするために独自の資格証明を作成および管理する必要がなくなります。
Autonomous Databaseでは、リソース・プリンシパルを使用して、次のインタフェースを使用してOracle Cloud Infrastructure APIに対して認証できます:
- 資格証明引数を取る
DBMS_CLOUD
プロシージャおよびファンクション - Oracle Cloud Infrastructure PL/SQL SDK API
リソース・プリンシパルを使用して認証する場合、Autonomous Databaseには、Oracle Cloud Infrastructureリソースにアクセスするためのセキュアな方法が用意されています。
Autonomous Databaseでリソース・プリンシパルを設定するには、いくつかのステップが必要です:
-
Oracle Cloud Infrastructure Infrastructure Identity and Access Management (IAM)の定義ポリシーを作成する必要があります。詳細は、Autonomous Databaseでリソース・プリンシパルを使用するための前提条件の実行を参照してください。
-
ADMINユーザーのリソース・プリンシパルの有効化、およびオプションでデータベース・ユーザーのリソース・プリンシパルの有効化を行う必要があります。詳細は、Oracle Cloud Infrastructureリソースにアクセスするためのリソース・プリンシパルの有効化を参照してください。
リソース・プリンシパルを使用して認証する場合、Oracle Cloud Infrastructureリソースにアクセスするための資格証明を作成および管理する必要はありません。Autonomous Databaseにより、リソース・プリンシパルが使用可能になり、リソース・プリンシパルを保護されます。
Autonomous Databaseでリソース・プリンシパルを使用するための前提条件の実行
リソース・プリンシパルを使用してOracle Cloud Infrastructureリソースをコールする前に、Oracle Cloud Infrastructureテナンシ管理者は、リソース・プリンシパル権限を定義するOracle Cloud Infrastructureポリシー、動的グループおよびルールを作成する必要があります。
Autonomous Databaseでリソース・プリンシパルを使用する前に、次のステップを実行します:
Oracle Cloud Infrastructureリソースにアクセスするためのリソース・プリンシパルの有効化
次のステップを実行して、Autonomous Databaseでリソース・プリンシパルを有効にします。
前提条件として、動的グループおよびポリシーを構成します。詳細は、Autonomous Databaseでリソース・プリンシパルを使用するための前提条件の実行を参照してください。
Autonomous Databaseでリソース・プリンシパルを有効にするには:
Autonomous Databaseインスタンスでリソース・プリンシパルの有効化は、1回かぎりの操作です。DBMS_CLOUD_ADMIN.DISABLE_RESOURCE_PRINCIPAL
を実行してリソース・プリンシパルを無効にしないかぎり、リソース・プリンシパルを再度有効にする必要はありません。
Autonomous Databaseでのリソース・プリンシパルの無効化
すべてのAutonomous Databaseユーザーまたは指定したユーザーのリソース・プリンシパルを無効にするステップを示します。
指定されたデータベース・ユーザーのリソース・プリンシパル資格証明へのアクセスを削除するには、username
パラメータを含めます。これにより、OCI$RESOURCE_PRINCIPAL
資格証明への指定されたユーザー・アクセスが拒否されます。
たとえば:
EXEC DBMS_CLOUD_ADMIN.DISABLE_RESOURCE_PRINCIPAL
(username => 'ADB_USER');
詳細は、DISABLE_RESOURCE_PRINCIPALプロシージャを参照してください。
リソース・プリンシパルとDBMS_CLOUDの使用
DBMS_CLOUD
コールでリソース・プリンシパル資格証明を指定すると、データベースによってOracle Cloud Infrastructureリクエストが認証され、データベースはOracle Cloud Infrastructureリソースにアクセスするための資格証明を提供します。
まだ実行していない場合は、必要な前提条件ステップを実行します。
-
Oracle Cloud Infrastructureリソースへのアクセスは、動的グループ・ルール、およびOracle Cloud Infrastructureポリシーと動的グループで設定したポリシーによって異なります。詳細は、Autonomous Databaseでリソース・プリンシパルを使用するための前提条件の実行を参照してください。
-
動的グループおよびポリシーを定義した後、ADMINスキーマまたは別のスキーマがリソース・プリンシパルを使用できるようにします。詳細は、Oracle Cloud Infrastructureリソースにアクセスするためのリソース・プリンシパルの有効化を参照してください。
リソース・プリンシパル資格証明でDBMS_CLOUD
プロシージャを使用するには:
「資格証明の作成および既存の表へのデータのコピー」に示すように、オブジェクト・ストレージへのアクセスに必要なステップを比較する場合は、システム定義のOCI$RESOURCE_PRINCIPAL
資格証明を使用しているため、リソース・プリンシパルを使用する場合、ステップ1では資格証明の作成は必要ありません。