翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
このトピックでは、アカウント管理者が識別 IAM アイデンティティ (ユーザー、グループ、ロール) へのアクセス権限ポリシーをアタッチする、アイデンティティベースのポリシーの例を示します。
重要
最初に、MemoryDB リソースへのアクセスを管理するための基本的な概念とオプションについて説明するトピックを読むことをお勧めします。詳細については、「MemoryDB リソースに対する許可の管理の概要」を参照してください。
このセクションでは、次のトピックを対象としています。
以下に示しているのは、アクセス許可ポリシーの例です。
{ "Version": "2012-10-17", "Statement": [{ "Sid": "AllowClusterPermissions", "Effect": "Allow", "Action": [ "memorydb:CreateCluster", "memorydb:DescribeClusters", "memorydb:UpdateCluster"], "Resource": "*" }, { "Sid": "AllowUserToPassRole", "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "arn:aws:iam::123456789012:role/EC2-roles-for-cluster" } ] }
このポリシーには以下の 2 つのステートメントがあります。
-
最初のステートメントは、アカウントが所有するクラスター上の MemoryDB アクション (
memorydb:CreateCluster
、memorydb:DescribeClusters
、memorydb:UpdateCluster
) のアクセス権限を付与します。 -
2 番目のステートメントは、
Resource
値の最後に指定されたIAMロール名に対するIAMアクション (iam:PassRole
) のアクセス許可を付与します。
ID ベースのポリシーでアクセス許可を得るプリンシパルを指定していないため、ポリシーでは Principal
要素を指定していません。ユーザーにポリシーをアタッチすると、そのユーザーが暗黙のプリンシパルになります。IAM ロールにアクセス権限ポリシーをアタッチすると、ロールの信頼ポリシーで識別されたプリンシパルがアクセス権限を得ることになります。
すべての MemoryDB APIアクションとそれらが適用されるリソースを示す表については、「」を参照してくださいMemoryDB アクセスAPI許可: アクション、リソース、および条件リファレンス。
MemoryDB コンソールの使用に必要なアクセス権限
アクセス許可リファレンステーブルには、MemoryDB APIオペレーションが一覧表示され、各オペレーションに必要なアクセス許可が表示されます。MemoryDB APIオペレーションの詳細については、「」を参照してくださいMemoryDB アクセスAPI許可: アクション、リソース、および条件リファレンス。
MemoryDB コンソールを使用するには、まず、以下のアクセス権限ポリシーに示しているように、追加のアクションのためのアクセス権限を付与します。
{ "Version": "2012-10-17", "Statement": [{ "Sid": "MinPermsForMemDBConsole", "Effect": "Allow", "Action": [ "memorydb:Describe*", "memorydb:List*", "ec2:DescribeAvailabilityZones", "ec2:DescribeVpcs", "ec2:DescribeAccountAttributes", "ec2:DescribeSecurityGroups", "cloudwatch:GetMetricStatistics", "cloudwatch:DescribeAlarms", "s3:ListAllMyBuckets", "sns:ListTopics", "sns:ListSubscriptions" ], "Resource": "*" } ] }
MemoryDB コンソールには、以下の理由でこれらの追加のアクセス権限が必要になります。
-
MemoryDB アクションを実行するためのアクセス権限。コンソールで、アカウントの MemoryDB リソースを表示するために必要です。
-
コンソールには、アベイラビリティーゾーン、、セキュリティグループ、およびアカウント属性を表示EC2できるようにVPCs、Amazon をクエリする
ec2
アクションのアクセス許可が必要です。 -
cloudwatch
アクションのアクセス許可により、コンソールは Amazon CloudWatch メトリクスとアラームを取得し、コンソールに表示できます。 -
sns
アクションのアクセス許可により、コンソールは Amazon Simple Notification Service (Amazon SNS) トピックとサブスクリプションを取得し、コンソールに表示できます。
カスタマーマネージドポリシーの例
デフォルトポリシーを使用せず、カスタムマネージドポリシーを使用することを選択した場合は、以下の 2 点のいずれかを確認してください。iam:createServiceLinkedRole
を呼び出すためのアクセス許可があることが必要です (詳細については、「例 4: ユーザーに の呼び出しを許可する IAM CreateServiceLinkedRole API」を参照)。または、MemoryDB サービスにリンクされたロールを作成済みであることが必要です。
MemoryDB コンソールを使用するために必要な最小限のアクセス権限と組み合わせて、このセクションでのポリシーの例は、追加のアクセス権限を付与します。これらの例は、 および AWS SDKsにも関連しています AWS CLI。MemoryDB コンソールを使用するために必要なアクセス権限の詳細については、「MemoryDB コンソールの使用に必要なアクセス権限」を参照してください。
IAM ユーザーとグループの設定手順については、 IAM ユーザーガイドの「最初のIAMユーザーと管理者グループの作成」を参照してください。
重要
IAM ポリシーは必ず、本稼働環境での使用前にテストしてください。MemoryDB のアクションによっては、シンプルに見えても、MemoryDB コンソールの使用時にそれらのアクションをサポートするために、他のアクションが必要になる場合があります。例えば、memorydb:CreateCluster
は、 MemoryDBクラスターを作成するためのアクセス権限を付与します。ただし、このオペレーションを実行するために、 MemoryDB コンソールでは Describe
と List
の多数のアクションが使用されて、リストが事前設定されます。
例
例 1: MemoryDB リソースへの読み取り専用アクセスをユーザーに許可する
以下のポリシーでは、リソースを一覧表示する MemoryDB アクションを実行するためのアクセス権限をユーザーに付与します。通常、このタイプのアクセス権限ポリシーは管理者グループにアタッチします。
{ "Version": "2012-10-17", "Statement":[{ "Sid": "MemDBUnrestricted", "Effect":"Allow", "Action": [ "memorydb:Describe*", "memorydb:List*"], "Resource":"*" } ] }
例 2: ユーザーに一般的な MemoryDB システム管理者タスクの実行を許可する
一般的なシステム管理者タスクには、クラスター、パラメータ、パラメータグループの変更が含まれます。システム管理者は MemoryDB イベントに関する情報を取得することが必要になる場合もあります。以下のポリシーでは、これらの一般的なシステム管理タスクの MemoryDB アクションを実行する権限をユーザーに付与します。通常、このタイプのアクセス権限ポリシーはシステム管理者グループにアタッチします。
{ "Version": "2012-10-17", "Statement":[{ "Sid": "MDBAllowSpecific", "Effect":"Allow", "Action":[ "memorydb:UpdateCluster", "memorydb:DescribeClusters", "memorydb:DescribeEvents", "memorydb:UpdateParameterGroup", "memorydb:DescribeParameterGroups", "memorydb:DescribeParameters", "memorydb:ResetParameterGroup",], "Resource":"*" } ] }
例 3: ユーザーにすべての MemoryDB APIアクションへのアクセスを許可する
以下のポリシーでは、ユーザーにすべての MemoryDB アクションへのアクセスを許可します。このタイプのアクセス権限ポリシーは管理者ユーザーにのみ付与することをお勧めします。
{ "Version": "2012-10-17", "Statement":[{ "Sid": "MDBAllowAll", "Effect":"Allow", "Action":[ "memorydb:*" ], "Resource":"*" } ] }
例 4: ユーザーに の呼び出しを許可する IAM CreateServiceLinkedRole API
次のポリシーでは、 を呼び出すことをユーザーに許可しますIAMCreateServiceLinkedRole
API。mutative MemoryDB オペレーションを実行するユーザーには、このタイプのアクセス許可ポリシーを与えることをお勧めします。
{ "Version":"2012-10-17", "Statement":[ { "Sid":"CreateSLRAllows", "Effect":"Allow", "Action":[ "iam:CreateServiceLinkedRole" ], "Resource":"*", "Condition":{ "StringLike":{ "iam:AWS ServiceName":"memorydb.amazonaws.com" } } } ] }