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 ポリシーの構文と説明については、「 ユーザーガイド」のAWSIAM 「 ポリシーリファレンスIAM」を参照してください。

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

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

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

  • アカウントのユーザーまたはグループにアクセス許可ポリシーを付与する - アカウント管理者は、特定のユーザーに関連付けられているアクセス許可ポリシーを使用して、そのユーザーにインスタンスなどの 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 ポリシーの構文と説明の詳細については、「 ユーザーガイド」のAWS IAM「 ポリシーリファレンスIAM」を参照してください。

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

ポリシーでの条件の指定

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

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