Amazon DocumentDB リソースへのアクセス許可の管理 - Amazon DocumentDB

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon DocumentDB リソースへのアクセス許可の管理

すべての AWS リソースは によって所有され AWS アカウント、リソースを作成またはアクセスするためのアクセス許可はアクセス許可ポリシーによって管理されます。アカウント管理者は、アクセス許可ポリシーを ID (ユーザー、グループ、ロール) IAM にアタッチできます。また、一部のサービス ( など AWS Lambda) では、アクセス許可ポリシーを リソースにアタッチすることもできます。

注記

アカウント管理者 (または管理者ユーザー) は、管理者アクセス許可を持つユーザーです。詳細については、「 IAMユーザーガイド」のIAM「ベストプラクティス」を参照してください。

Amazon DocumentDB リソースおよびオペレーション

Amazon DocumentDB では、プライマリリソースは クラスター です。Amazon DocumentDB は、インスタンスパラメータグループイベントサブスクリプション などのプライマリリソースで使用できる他のリソースをサポートします。これらのリソースはサブリソースと呼ばれます。

これらのリソースとサブリソースには、次の表に示すように、一意の Amazon リソースネーム (ARNs) が関連付けられています。

リソースタイプ ARN 形式

クラスター

arn:aws:rds:region:account-id:cluster:db-cluster-name

クラスターパラメータグループ

arn:aws:rds:region:account-id:cluster-pg:cluster-parameter-group-name

クラスタースナップショット

arn:aws:rds:region:account-id:cluster-snapshot:cluster-snapshot-name

インスタンス

arn:aws:rds:region:account-id:db:db-instance-name

セキュリティグループ

arn:aws:rds:region:account-id:secgrp:security-group-name

サブネットグループ

arn:aws:rds:region:account-id:subgrp:subnet-group-name

Amazon DocumentDB には、Amazon DocumentDB のリソースを操作するための一連のオペレーションが用意されています。可能なオペレーションのリストについては、「アクション」を参照してください。

リソース所有権について

リソース所有者は、リソースを作成した AWS アカウント です。つまり、リソース所有者は、リソースを作成するリクエスト AWS アカウント を認証するプリンシパルエンティティ (ルートアカウント、 IAM ユーザー、または IAMロール) の です。次の例は、この仕組みを示しています。

  • のルートアカウントの認証情報を使用してインスタンスなどの Amazon DocumentDB リソース AWS アカウント を作成する場合、 AWS アカウント は Amazon DocumentDB リソースの所有者です。

  • で IAM ユーザーを作成し AWS アカウント 、そのユーザーに Amazon DocumentDB リソースを作成するアクセス許可を付与すると、そのユーザーは Amazon DocumentDB リソースを作成できます。ただし、ユーザーが属 AWS アカウントする が Amazon DocumentDB リソースを所有しています。

  • Amazon DocumentDB リソースを作成するアクセス許可 AWS アカウント を持つ で IAMロールを作成する場合、ロールを引き受けることのできるいずれのユーザーも Amazon DocumentDB リソースを作成できます。ロールが属 AWS アカウントする が Amazon DocumentDB リソースを所有しています。

リソースへのアクセスの管理

アクセス権限ポリシー では、誰が何にアクセスできるかを記述します。以下のセクションで、アクセス許可ポリシーを作成するために使用可能なオプションについて説明します。

注記

このセクションでは、Amazon DocumentDB のコンテキストIAMでの の使用について説明します。これは、IAM サービスに関する詳細情報を取得できません。詳細なIAMドキュメントについては、「 IAMユーザーガイド」の「 IAMとは」を参照してください。IAM ポリシーの構文と説明については、「 IAMユーザーガイド」のAWSIAM 「 ポリシーリファレンス」を参照してください。

IAM 認証情報にアタッチされているポリシーは、アイデンティティベースのポリシー (IAM ポリシー) と呼ばれます。リソースにアタッチされているポリシーは、リソースベース のポリシーと呼ばれます。Amazon DocumentDB は、アイデンティティベースのポリシー (IAM ポリシー) のみをサポートしています。

アイデンティティベースのポリシー (IAM ポリシー)

ポリシーを IAM アイデンティティにアタッチできます。例えば、次のオペレーションを実行できます。

  • アカウントのユーザーまたはグループにアクセス許可ポリシーを付与する - アカウント管理者は、特定のユーザーに関連付けられているアクセス許可ポリシーを使用して、そのユーザーにインスタンスなどの Amazon DocumentDB リソースを作成するためのアクセス許可を付与できます。

  • アクセス許可ポリシーをロールにアタッチする (クロスアカウントのアクセス許可を付与) – アイデンティティベースのアクセス許可ポリシーを IAM ロールにアタッチして、クロスアカウントのアクセス許可を付与することができます。例えば、管理者は次のように、別の AWS アカウント または AWS サービスにクロスアカウントアクセス許可を付与するロールを作成できます。

    1. アカウント A の管理者は、IAM ロールを作成して、アカウント A のリソースに権限を付与するロールに権限ポリシーをアタッチします。

    2. アカウント A の管理者は、アカウント B をそのロールを引き受けるプリンシパルとして識別するロールに、信頼ポリシーをアタッチします。

    3. アカウント B の管理者は、アカウント B の任意のユーザーにロールを引き受けるアクセス許可を委任できます。これにより、アカウント B のユーザーはアカウント A のリソースを作成またはアクセスできます。ロールを引き受けるアクセス許可を AWS サービスに付与する場合は、信頼ポリシーのプリンシパルを AWS サービスプリンシパルにすることもできます。

    を使用してアクセス許可IAMを委任する方法の詳細については、「 IAMユーザーガイド」の「アクセス管理」を参照してください。

以下は、ID 123456789012 を持つユーザーが AWS アカウントのインスタンスを作成できるようにするポリシーの例です。新しいインスタンスでは、オプショングループと default で始まるパラメータグループ、および default サブネットグループを使用する必要があります。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowCreateDBInstanceOnly", "Effect": "Allow", "Action": [ "rds:CreateDBInstance" ], "Resource": [ "arn:aws:rds:*:123456789012:db:test*", "arn:aws:rds:*:123456789012:pg:cluster-pg:default*", "arn:aws:rds:*:123456789012:subgrp:default" ] } ] }

Amazon DocumentDB でアイデンティティベースのポリシーを使用する場合の詳細については、Amazon DocumentDB でのアイデンティティベースのポリシー (IAM ポリシー) の使用 を参照してください。ユーザー、グループ、ロール、アクセス許可の詳細については、 IAM ユーザーガイドの「アイデンティティ (ユーザー、グループ、ロール)」を参照してください。

リソースベースのポリシー

Amazon S3 (Amazon Simple Storage Service) などその他のサービスでは、リソースベースの権限ポリシーがサポートされています。例えば、ポリシーを Amazon S3 バケットにアタッチして、そのバケットに対するアクセス許可を管理できます。Amazon DocumentDB では、リソースベースのポリシーはサポートされていません。

ポリシー要素の指定 : アクション、効果、リソース、プリンシパル

Amazon DocumentDB リソースごとに (「」を参照Amazon DocumentDB リソースおよびオペレーション)、サービスは一連のAPIオペレーションを定義します。詳細については、「アクション」を参照してください。これらのAPIオペレーションのアクセス許可を付与するために、Amazon DocumentDB はポリシーで指定できる一連のアクションを定義します。API オペレーションを実行するには、複数のアクションに対するアクセス許可が必要になる場合があります。

以下は、基本的なポリシーの要素です。

  • リソース – ポリシーでは、Amazon リソースネーム (ARN) を使用して、ポリシーが適用されるリソースを識別します。

  • [Action] (アクション) - アクションのキーワードを使用して、許可または拒否するリソースオペレーションを識別します。例えば、rds:DescribeDBInstances 権限は、DescribeDBInstances オペレーションの実行をユーザーに許可します。

  • 効果 – ユーザーが特定のアクションを要求する際の効果を指定します。許可または拒否のいずれかになります。リソースへのアクセスを明示的に付与 (許可) していない場合、アクセスは暗黙的に拒否されます。また、明示的にリソースへのアクセスを拒否すると、別のポリシーによってアクセスが許可されている場合でも、ユーザーはそのリソースにアクセスできなくなります。

  • プリンシパル – アイデンティティベースのポリシー (IAM ポリシー) で、ポリシーがアタッチされているユーザーが暗黙のプリンシパルとなります。リソースベースのポリシーでは、権限(リソースベースのポリシーにのみ適用)を受け取りたいユーザー、アカウント、サービス、またはその他のエンティティを指定します。Amazon DocumentDB では、リソースベースのポリシーはサポートされていません。

IAM ポリシーの構文と説明の詳細については、「 IAMユーザーガイド」のAWS IAM「 ポリシーリファレンス」を参照してください。

すべての Amazon DocumentDB APIアクションとそれらが適用されるリソースを示す表については、「」を参照してくださいAmazon DocumentDB アクセスAPI許可: アクション、リソース、および条件リファレンス

ポリシーの条件の指定

アクセス権限を付与するとき、IAM ポリシー言語を使用して、ポリシーが有効になる必要がある条件を指定できます。例えば、特定の日付の後にのみ適用されるポリシーが必要になる場合があります。ポリシー言語での条件の指定の詳細については、「 IAMユーザーガイド」の「条件」を参照してください。

条件を表すには、あらかじめ定義された条件キーを使用します。Amazon DocumentDB には、 IAMポリシーで使用できるサービス固有のコンテキストキーはありません。すべてのサービスで使用できるグローバル条件コンテキストキーのリストについては、「 IAMユーザーガイド」の「条件に使用可能なキー」を参照してください。