IAMユーザーのIdentity and Access Management (IAM)グループおよびポリシーの作成

IAMグループのポリシー・ステートメントを記述して、Oracle Cloud Infrastructureリソース(特にAutonomous Databaseインスタンス)へのIAMユーザー・アクセスを有効にするステップについて説明します。

ポリシーは、特定のリソースにアクセスできるユーザーとその方法を指定するステートメントのグループです。アクセスは、テナンシ全体、コンパートメント内のデータベースまたは個々のデータベースに対して付与できます。つまり、特定のコンパートメント内の特定のタイプのリソースへの特定のアクセス・タイプを特定のグループに付与するポリシー・ステートメントを記述します。

ノート

IAMトークンを使用してAutonomous Databaseにアクセスするには、ポリシーを定義する必要があります。IAMデータベース・パスワードを使用してAutonomous Databaseにアクセスする場合、ポリシーは不要です。

Autonomous DatabaseでIAMユーザーがIAMトークンを使用してデータベースに接続できるようにするには:

  1. グループを作成し、そのグループにユーザーを追加して、Oracle Cloud Infrastructure Identity and Access Managementの前提条件を実行します。

    たとえば、グループsales_dbusersを作成します。

    詳細は、グループの管理を参照してください。

  2. Oracle Cloud Infrastructureリソースへのアクセスを有効にするポリシー・ステートメントを記述します。
    1. Oracle Cloud Infrastructureコンソールで、「アイデンティティとセキュリティ」をクリックします。
    2. 「アイデンティティとセキュリティ」で、「ポリシー」をクリックします。
    3. 書込みポリシーには、「ポリシーの作成」をクリックします。
    4. ポリシーの作成ページで、名前と説明を入力します。
    5. 「ポリシーの作成」ページで、「手動エディタの表示」を選択します。
      adb_iam_create_policy_manual.pngの説明が続きます
    6. ポリシー・ビルダーを使用してポリシーを作成します。

      たとえば、IAMグループDBUsers内のユーザーがテナンシ内のAutonomous Databaseにアクセスできるようにするポリシーを作成するには:

      Allow group DBUsers to use autonomous-database-family in tenancy
      たとえば、DBUsersグループのメンバーがコンパートメントtesting_compartment内のAutonomous Databasesにのみアクセスするように制限するポリシーを作成するには:
      allow group DBUsers to use autonomous-database-family in compartment testing_compartment 
      たとえば、グループのアクセスをコンパートメント内の単一データベースに制限するポリシーを作成するには:
      allow group DBUsers to use autonomous-database-family in compartment testing_compartment where target.database.id = 'ocid1.autonomousdatabase.oc1.iad.aaaabbbbcccc'

      データベースにアクセスするためのIAMポリシーの詳細は、データベース・セキュリティ・ガイドトークンで認証するユーザーを認可するIAMポリシーの作成を参照してください。

    7. 「作成」をクリックします

      ポリシーの詳細は、ポリシーの管理を参照してください。

Autonomous DatabaseでIAMユーザーに使用するポリシーを作成するためのノート:

  • ポリシーでは、IAMユーザーがテナンシ全体またはコンパートメント内のAutonomous Databaseインスタンスにアクセスできるようにしたり、単一のAutonomous Databaseインスタンスにアクセスを制限したりできます。

  • インスタンス・プリンシパルまたはリソース・プリンシパルのいずれかを使用して、アプリケーションからAutonomous Databaseインスタンスへの接続を確立するデータベース・トークンを取得できます。インスタンス・プリンシパルまたはリソース・プリンシパルを使用する場合は、動的グループをマップする必要があります。したがって、インスタンス・プリンシパルとリソース・プリンシパルを排他的にマップすることはできません。共有マッピングを使用して、インスタンスまたはリソース・インスタンスをIAM動的グループに入れることによってのみ、マッピングすることができます。

    動的グループを作成し、作成したポリシーで動的グループを参照してOracle Cloud Infrastructureにアクセスできます。詳細は、リソースにアクセスするためのポリシーおよびロールの構成および動的グループの管理を参照してください。