でのアイデンティティベースのポリシー (IAM ポリシー) の使用 AWS Directory Service - AWS Directory Service

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

でのアイデンティティベースのポリシー (IAM ポリシー) の使用 AWS Directory Service

このトピックでは、アカウント管理者が ID (ユーザー、グループ、ロール) IAM にアクセス許可ポリシーをアタッチできるアイデンティティベースのポリシーの例を示します。

重要

へのアクセスを管理するための基本概念と使用可能なオプションについて説明する概要トピックを最初に確認することをお勧めします。 AWS Directory Service リソースの使用料金を見積もることができます。詳細については、「へのアクセス許可の管理の概要 AWS Directory Service リソース」を参照してください。

このセクションでは、次のトピックを対象としています。

以下に示しているのは、アクセス許可ポリシーの例です。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowDsEc2IamGetRole", "Effect": "Allow", "Action": [ "ds:CreateDirectory", "ec2:RevokeSecurityGroupIngress", "ec2:CreateNetworkInterface", "ec2:AuthorizeSecurityGroupEgress", "ec2:AuthorizeSecurityGroupIngress", "ec2:DescribeNetworkInterfaces", "ec2:DescribeVpcs", "ec2:CreateSecurityGroup", "ec2:RevokeSecurityGroupEgress", "ec2:DeleteSecurityGroup", "ec2:DeleteNetworkInterface", "ec2:DescribeSubnets", "iam:GetRole" ], "Resource": "*" }, { "Sid": "WarningAllowsCreatingRolesWithDirSvcPrefix", "Effect": "Allow", "Action": [ "iam:CreateRole", "iam:PutRolePolicy" ], "Resource": "arn:aws:iam::111122223333:role/DirSvc*" }, { "Sid": "AllowPassRole", "Effect": "Allow", "Action": "iam:PassRole", "Resource": "*", "Condition": { "StringEquals": { "iam:PassedToService": "cloudwatch.amazonaws.com" } } } ] }

ポリシーの 3 つのステートメントは、次のようにアクセス許可を付与します。

  • 最初のステートメントは、 を作成するアクセス許可を付与します。 AWS Directory Service ディレクトリ。なぜなら、 AWS Directory Service はリソースレベルでのアクセス許可をサポートしていません。ポリシーでは、Resource値としてワイルドカード文字 (*) を指定します。

  • 2 番目のステートメントは、 IAM アクションへのアクセス許可を付与します。これにより、 AWS Directory Service は、ユーザーに代わってIAMロールを読み取って作成できます。Resource 値の末尾のワイルドカード文字 (*) は、ステートメントが任意のIAMロールに対するIAMアクションのアクセス許可を許可することを意味します。このアクセス許可を特定のロールに制限するには、リソースのワイルドカード文字 (*) を特定のロール名に置き換えARNます。詳細については、IAM「アクション」を参照してください。

  • 3 番目のステートメントEC2は、 を許可するために必要な Amazon の特定のリソースセットにアクセス許可を付与します。 AWS Directory Service ディレクトリを作成、設定、破棄する 。Resource 値の末尾のワイルドカード文字 (*) は、ステートメントが任意のEC2リソースまたはサブリソースに対するEC2アクションのアクセス許可を許可することを意味します。このアクセス許可を特定のロールに制限するには、リソース内のワイルドカード文字 (*) を特定のリソースまたはサブリソースに置き換えARNます。詳細については、「Amazon EC2 Actions」を参照してください。

アイデンティティベースのポリシーでは、アクセス許可を取得するプリンシパルを指定しないため、ポリシーには Principal要素が表示されません。ユーザーにそのポリシーをアタッチすると、そのユーザーが暗黙のプリンシパルになります。アクセス許可ポリシーを IAMロールにアタッチすると、ロールの信頼ポリシーで識別されたプリンシパルがアクセス許可を取得します。

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

を使用するために必要なアクセス許可 AWS Directory Service コンソール

ユーザーが を操作するには AWS Directory Service コンソール、そのユーザーは、前述のポリシーに記載されているアクセス許可、または で説明されている Directory Service フルアクセスロールまたは Directory Service 読み取り専用ロールによって付与されたアクセス許可を持っている必要がありますAWS の マネージド (事前定義) ポリシー AWS Directory Service

最小限必要なアクセス許可よりも制限されたIAMポリシーを作成すると、そのIAMポリシーを持つユーザーに対してコンソールが意図したとおりに機能しません。

AWS の マネージド (事前定義) ポリシー AWS Directory Service

AWS は、 によって作成および管理される事前定義済みまたは管理IAMポリシーを提供することで、多くの一般的なユースケースに対処します。 AWS。 管理ポリシーは、一般的なユースケースに必要なアクセス許可を付与するため、必要なアクセス許可を決定するのに役立ちます。詳細については、「AWS の マネージドポリシー AWS Directory Service」を参照してください。

カスタマーマネージドポリシーの例

このセクションでは、さまざまな のアクセス許可を付与するユーザーポリシーの例を示します。 AWS Directory Service アクション。

注記

すべての例では、米国西部 (オレゴン) リージョン (us-west-2) を使用し、架空のアカウント が含まれていますIDs。

例 1: 任意の に対して任意の Describe アクションを実行することをユーザーに許可する AWS Directory Service リソース

次のアクセス権限ポリシーは、Describe で始まるすべてのアクションを実行するためのアクセス権限をユーザーに付与します。これらのアクションは、 に関する情報を表示します。 AWS Directory Service ディレクトリやスナップショットなどの リソース。Resource 要素のワイルドカード文字 (*) は、すべての に対してアクションが許可されていることを示します。 AWS Directory Service アカウントが所有する リソース。

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":"ds:Describe*", "Resource":"*" } ] }

例 2: ディレクトリの作成をユーザーに許可する

次のアクセス許可ポリシーによって、ディレクトリおよび関連するすべての他のリソース (スナップショットや信頼など) を作成するアクセス許可がユーザーに付与されます。そのためには、特定の Amazon EC2サービスへのアクセス許可も必要です。

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action": [ "ds:Create*", "ec2:AuthorizeSecurityGroupEgress", "ec2:AuthorizeSecurityGroupIngress", "ec2:CreateNetworkInterface", "ec2:CreateSecurityGroup", "ec2:DeleteNetworkInterface", "ec2:DeleteSecurityGroup", "ec2:DescribeNetworkInterfaces", "ec2:DescribeSubnets", "ec2:DescribeVpcs", "ec2:RevokeSecurityGroupEgress", "ec2:RevokeSecurityGroupIngress" ], "Resource":"*" ] } ] }

IAM ポリシーでのタグの使用

ほとんどの で使用するIAMポリシーにタグベースのリソースレベルのアクセス許可を適用できます。 AWS Directory Service API アクション。これにより、ユーザーがどのリソースを作成、変更、または使用できるかを制御しやすくなります。リソースのタグに基づいてユーザーアクセス (アクセス許可) を制御するには、 IAMポリシー内の次の条件コンテキストキーと値で Condition要素 ( Conditionブロックとも呼ばれます) を使用します。

  • 特定のタグを持つリソースに対してユーザーアクションを許可または拒否するには、aws:ResourceTag/tag-key: tag-value を使用します。

  • awsResourceTag/tag-key: を使用して、タグを許可するリソースを作成または変更するAPIリクエストを行うときに、特定のタグを使用する (または使用しない) ことをtag-value要求します。

  • awsTagKeys: [tag-key, ...] を使用して、タグを許可するリソースを作成または変更するAPIリクエストを行うときに、特定のタグキーのセットを使用する (または使用しない) ことを要求します。

注記

IAM ポリシーの条件コンテキストのキーと値は、それらのキーと値にのみ適用されます。 AWS Directory Service タグを付けることができるリソースの識別子が必須パラメータである アクション。

「 ユーザーガイド」の「タグを使用したアクセスの制御」には、タグの使用に関する追加情報が記載されています。 IAM そのガイドのIAMJSONポリシーリファレンスセクションには、 のJSONポリシーの要素、変数、評価ロジックの詳細な構文、説明、例が含まれていますIAM。

次のタグポリシーの例では、タグとキーのペア "fooKey":"fooValue" が含まれている限り、ds の呼び出しはすべて許可されます。

{ "Version":"2012-10-17", "Statement":[ { "Sid":"VisualEditor0", "Effect":"Allow", "Action":[ "ds:*" ], "Resource":"*", "Condition":{ "StringEquals":{ "aws:ResourceTag/fooKey":"fooValue" } } }, { "Effect":"Allow", "Action":[ "ec2:*" ], "Resource":"*" } ] }

次のリソースポリシーの例では、リソースにディレクトリ ID 「d-1234567890」が含まれている限り、ds の呼び出しはすべて許可されます。

{ "Version":"2012-10-17", "Statement":[ { "Sid":"VisualEditor0", "Effect":"Allow", "Action":[ "ds:*" ], "Resource":"arn:aws:ds:us-east-1:123456789012:directory/d-1234567890" }, { "Effect":"Allow", "Action":[ "ec2:*" ], "Resource":"*" } ] }

の詳細についてはARNs、「Amazon リソースネーム (ARNs)」および「」を参照してください。 AWS サービス名前空間

次の のリスト AWS Directory Service API オペレーションは、タグベースのリソースレベルのアクセス許可をサポートします。