翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
MemoryDB は AWS Identity and Access Management 、(IAM) サービスにリンクされたロールを使用します。サービスにリンクされたロールは、MemoryDB などの AWS サービスに直接リンクされた一意のタイプのIAMロールです。MemoryDB サービスリンクロールは、MemoryDB によって事前定義されています。それらには、サービスがユーザーのクラスターに代わって AWS のサービスを呼び出すために必要なすべてのアクセス許可が含まれます。
必要な権限を手動で追加する必要がないため、サービスリンクロールは MemoryDB のセットアップを容易にします。ロールは AWS アカウント内に既に存在しますが、MemoryDB ユースケースにリンクされており、事前定義されたアクセス許可があります。これらのロールを引き受けることができるのは MemoryDB のみで、事前定義されたアクセス権限ポリシーを使用することができるのはこれらのロールのみです。ロールを削除するには、まず関連リソースを削除します。これは、リソースにアクセスするためのアクセス権限を誤って削除できないように、MemoryDB リソースを保護します。
サービスにリンクされたロールをサポートする他のサービスの詳細については、AWS 「 と連携するサービスIAM」を参照し、「サービスにリンクされたロール」列で「はい」があるサービスを探します。サービスにリンクされたロールに関するドキュメントをサービスで表示するには、[Yes] (はい) リンクを選択します。
目次
MemoryDB のサービスにリンクされたロールのアクセス権限
MemoryDB は、 AWSServiceRoleForMemoryDB という名前のサービスにリンクされたロールを使用します。このポリシーにより、MemoryDB はクラスターの管理に必要な AWS リソースを管理できます。
AWSServiceRoleForMemoryDB サービスにリンクされたロールのアクセス許可ポリシーにより、MemoryDB は指定されたリソースに対して次のアクションを実行できます。
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "CreateMemoryDBTagsOnNetworkInterfaces",
"Effect": "Allow",
"Action": [
"ec2:CreateTags"
],
"Resource": "arn:aws:ec2:*:*:network-interface/*",
"Condition": {
"StringEquals": {
"ec2:CreateAction": "CreateNetworkInterface"
},
"ForAllValues:StringEquals": {
"aws:TagKeys": [
"AmazonMemoryDBManaged"
]
}
}
},
{
"Sid": "CreateNetworkInterfaces",
"Effect": "Allow",
"Action": [
"ec2:CreateNetworkInterface"
],
"Resource": [
"arn:aws:ec2:*:*:network-interface/*",
"arn:aws:ec2:*:*:subnet/*",
"arn:aws:ec2:*:*:security-group/*"
]
},
{
"Sid": "DeleteMemoryDBTaggedNetworkInterfaces",
"Effect": "Allow",
"Action": [
"ec2:DeleteNetworkInterface",
"ec2:ModifyNetworkInterfaceAttribute"
],
"Resource": "arn:aws:ec2:*:*:network-interface/*",
"Condition": {
"StringEquals": {
"ec2:ResourceTag/AmazonMemoryDBManaged": "true"
}
}
},
{
"Sid": "DeleteNetworkInterfaces",
"Effect": "Allow",
"Action": [
"ec2:DeleteNetworkInterface",
"ec2:ModifyNetworkInterfaceAttribute"
],
"Resource": "arn:aws:ec2:*:*:security-group/*"
},
{
"Effect": "Allow",
"Action": [
"ec2:DescribeSecurityGroups",
"ec2:DescribeNetworkInterfaces",
"ec2:DescribeAvailabilityZones",
"ec2:DescribeSubnets",
"ec2:DescribeVpcs"
],
"Resource": "*"
},
{
"Sid": "PutCloudWatchMetricData",
"Effect": "Allow",
"Action": [
"cloudwatch:PutMetricData"
],
"Resource": "*",
"Condition": {
"StringEquals": {
"cloudwatch:namespace": "AWS/MemoryDB"
}
}
},
{
"Sid": "ReplicateMemoryDBMultiRegionClusterData",
"Effect": "Allow",
"Action": [
"memorydb:ReplicateMultiRegionClusterData"
],
"Resource": "arn:aws:memorydb:*:*:cluster/*"
}
]
}
詳細については、「AWS 管理ポリシー: MemoryDBServiceRolePolicy」を参照してください。
IAMエンティティが AWSServiceRoleForMemoryDB サービスにリンクされたロールを作成できるようにするには
以下のポリシーステートメントを IAM エンティティのアクセス許可に追加します。
{
"Effect": "Allow",
"Action": [
"iam:CreateServiceLinkedRole",
"iam:PutRolePolicy"
],
"Resource": "arn:aws:iam::*:role/aws-service-role/memorydb.amazonaws.com/AWSServiceRoleForMemoryDB*",
"Condition": {"StringLike": {"iam:AWS ServiceName": "memorydb.amazonaws.com"}}
}
IAMエンティティが AWSServiceRoleForMemoryDB サービスにリンクされたロールを削除できるようにするには
以下のポリシーステートメントを IAM エンティティのアクセス許可に追加します。
{
"Effect": "Allow",
"Action": [
"iam:DeleteServiceLinkedRole",
"iam:GetServiceLinkedRoleDeletionStatus"
],
"Resource": "arn:aws:iam::*:role/aws-service-role/memorydb.amazonaws.com/AWSServiceRoleForMemoryDB*",
"Condition": {"StringLike": {"iam:AWS ServiceName": "memorydb.amazonaws.com"}}
}
または、 AWS 管理ポリシーを使用して MemoryDB へのフルアクセスを提供することもできます。
サービスにリンクされたロール (IAM) を作成する
サービスにリンクされたロールは、 IAMコンソール、、CLIまたは を使用して作成できますAPI。
サービスにリンクされたロールの作成 (IAM コンソール)
IAM コンソールを使用して、サービスにリンクされたロールを作成できます。
サービスにリンクされたロールを作成するには (コンソール)
にサインイン AWS Management Console し、 で IAMコンソールを開きますhttps://console.aws.amazon.com/iam/
。 -
IAM コンソールの左側のナビゲーションペインで、ロールを選択します。次に、新しいロールの作成を選択します。
-
信頼されたエンティティの種類を選択 の下で、AWS Service (サービス) を選択します。
-
[またはサービスを選択してそのユースケースを表示する] で、[MemoryDB] を選択します。
次: 許可 を選択します。
ポリシー名 の下で、
MemoryDBServiceRolePolicy
はこのロールに必要であることに注意してください。次: タグ を選択します。タグは、サービスにリンクされたロールではサポートされないことに注意してください。次: レビュー を選択します。
-
「オプショナル」ロールの説明 で、サービスにリンクされた新しいロールの説明を編集します。
-
ロール情報を確認し、ロールの作成 を選択します。
サービスにリンクされたロールの作成 (IAMCLI)
から IAMオペレーションを使用して AWS Command Line Interface 、サービスにリンクされたロールを作成できます。このロールには、ロールを引き受けるためにサービスで必要な信頼ポリシーやインラインポリシーを含めることができます。
サービスにリンクされたロールを作成するには (CLI)
次のオペレーションを使用してください。
$
aws iam create-service-linked-role --aws-service-name
memorydb.amazonaws.com
サービスにリンクされたロールの作成 (IAMAPI)
を使用してIAMAPI、サービスにリンクされたロールを作成できます。このロールには、ロールを引き受けるためにサービスで必要な信頼ポリシーやインラインポリシーを含めることができます。
サービスにリンクされたロールを作成するには (API)
を使用する CreateServiceLinkedRole API呼び出し。リクエストで、サービス名memorydb.amazonaws.com
を指定します。
MemoryDB のサービスにリンクされたロールの説明の編集
MemoryDB では、 AWSServiceRoleForMemoryDB サービスにリンクされたロールを編集することはできません。サービスリンクロールを作成した後は、多くのエンティティによってロールが参照される可能性があるため、ロール名を変更することはできません。ただし、IAM を使用したロールの説明の編集はできます。
サービスにリンクされたロールの説明の編集 (IAM コンソール)
サービスにリンクされたロールの説明は、IAM コンソールを使用して編集できます。
サービスにリンクされたロールの説明を編集するには (コンソール)
-
IAM コンソールの左側のナビゲーションペインで、ロールを選択します。
-
変更するロールの名前を選択します。
-
ロールの説明の右端にある編集を選択します。
-
ボックスに新しい説明を入力し、保存を選択します。
サービスにリンクされたロールの説明の編集 (IAM CLI)
から IAMオペレーションを使用して AWS Command Line Interface 、サービスにリンクされたロールの説明を編集できます。
サービスにリンクされたロールの説明を変更するには (CLI)
-
(オプション) ロールの現在の説明を表示するには、IAMオペレーション AWS CLI に を使用します
get-role
。$
aws iam get-role --role-name AWSServiceRoleForMemoryDB
CLI オペレーションでロールを参照するにはARN、 ではなくロール名を使用します。例えば、ロールに次の がある場合ARN:
arn:aws:iam::123456789012:role/myrole
、ロールを と参照しますmyrole
。 -
サービスにリンクされたロールの説明を更新するには、IAMオペレーション AWS CLI に を使用します
update-role-description
。Linux、macOS、Unix の場合:
$
aws iam update-role-description \ --role-name AWSServiceRoleForMemoryDB \ --description "
new description
"Windows の場合:
$
aws iam update-role-description ^ --role-name AWSServiceRoleForMemoryDB ^ --description "
new description
"
サービスにリンクされたロールの説明の編集 (IAM API)
を使用してIAMAPI、サービスにリンクされたロールの説明を編集できます。
サービスにリンクされたロールの説明を変更するには (API)
-
(オプション) ロールの現在の説明を表示するには、 IAMAPIオペレーションを使用します。GetRole.
https://iam.amazonaws.com/ ?Action=GetRole &RoleName=
AWSServiceRoleForMemoryDB
&Version=2010-05-08 &AUTHPARAMS -
ロールの説明を更新するには、 IAMAPIオペレーションを使用します。UpdateRoleDescription.
https://iam.amazonaws.com/ ?Action=UpdateRoleDescription &RoleName=
AWSServiceRoleForMemoryDB
&Version=2010-05-08 &Description="New description
"
MemoryDB のサービスにリンクされたロールの削除
サービスリンクロールが必要な機能またはサービスが不要になった場合には、そのロールを削除することをお勧めします。そうすることで、モニタリングや保守が積極的に行われていない未使用のエンティティを排除できます。ただし、削除する前に、サービスにリンクされた役割をクリーンアップする必要があります。
MemoryDB はサービスにリンクされたロールを削除しません。
サービスにリンクされたロールのクリーンアップ
IAM を使用してサービスにリンクされたロールを削除する前に、まずそのロールにリソース (クラスター) が関連付けられていないことを確認します。
サービスにリンクされたロールが IAM コンソールでアクティブなセッションを持っているかどうかを確認するには
にサインイン AWS Management Console し、 で IAMコンソールを開きますhttps://console.aws.amazon.com/iam/
。 -
IAM コンソールの左側のナビゲーションペインで、ロールを選択します。次に、 AWSServiceRoleForMemoryDB ロールの名前 (チェックボックスではありません) を選択します。
-
選択したロールの 概要 ページで、アクセスアドバイザー タブを選択します。
-
アクセスアドバイザー タブで、サービスにリンクされたロールの最新のアクティビティを確認します。
を必要とする MemoryDB リソースを削除するには AWSServiceRoleForMemoryDB (コンソール)
-
クラスターを削除するには、以下を参照してください。
サービスにリンクされたロールの削除 (IAM コンソール)
IAM コンソールを使用して、サービスにリンクされたロールを削除できます。
サービスにリンクされたロールを削除するには (コンソール)
にサインイン AWS Management Console し、 で IAMコンソールを開きますhttps://console.aws.amazon.com/iam/
。 -
IAM コンソールの左側のナビゲーションペインで、ロールを選択します。ロール名または行そのものではなく、削除するロール名の横にあるチェックボックスをオンにします。
-
ページ上部にある ロールのアクション で ロールの削除 を選択します。
-
確認ページで、サービスの最終アクセス時間データを確認します。このデータには、選択した各ロールが最後に AWS サービスにアクセスした日時が表示されます。これは、そのロールが現在アクティブであるかどうかを確認するのに役立ちます。先に進む場合は、Yes, Delete] (はい、削除する) を選択し、削除するサービスにリンクされたロールを送信します。
-
IAM コンソール通知を見て、サービスにリンクされたロールの削除の進行状況を監視します。IAM サービスにリンクされたロールの削除は非同期であるため、削除するロールを送信すると、削除タスクは成功または失敗する可能性があります。タスクが失敗した場合は、通知から View details] (詳細を表示) または View Resources] (リソースを表示) を選択して、削除が失敗した理由を知ることができます。
サービスにリンクされたロールの削除 (IAMCLI)
から IAMオペレーションを使用して AWS Command Line Interface 、サービスにリンクされたロールを削除できます。
サービスにリンクされたロールを削除するには (CLI)
-
削除するサービスにリンクされたロールの名前が分からない場合、以下のコマンドを入力します。このコマンドは、アカウントのロールとその Amazon リソースネーム (ARNs) を一覧表示します。
$
aws iam get-role --role-name
role-name
CLI オペレーションでロールを参照するにはARN、 ではなくロール名を使用します。たとえば、ロールに ARN がある場合
arn:aws:iam::123456789012:role/myrole
、ロールを と呼びますmyrole
。 -
サービスにリンクされているロールは、使用されている、または関連するリソースがある場合は削除できないため、削除リクエストを送信する必要があります。これらの条件が満たされない場合、そのリクエストは拒否される可能性があります。レスポンスから
deletion-task-id
を取得して、削除タスクのステータスを確認する必要があります。サービスにリンクされたロールの削除リクエストを送信するには、以下を入力します。$
aws iam delete-service-linked-role --role-name
role-name
-
削除タスクのステータスを確認するには、以下を入力します。
$
aws iam get-service-linked-role-deletion-status --deletion-task-id
deletion-task-id
削除タスクのステータスは、
NOT_STARTED
、IN_PROGRESS
、SUCCEEDED
、またはFAILED
となります。削除が失敗した場合は、失敗した理由がコールによって返され、トラブルシューティングが可能になります。
サービスにリンクされたロールの削除 (IAMAPI)
を使用してIAMAPI、サービスにリンクされたロールを削除できます。
サービスにリンクされたロールを削除するには (API)
-
サービスにリンクされたロールの削除リクエストを送信するには、 を呼び出します。DeleteServiceLinkedRole。 リクエストで、ロール名を指定します。
サービスにリンクされているロールは、使用されている、または関連するリソースがある場合は削除できないため、削除リクエストを送信する必要があります。これらの条件が満たされない場合、そのリクエストは拒否される可能性があります。レスポンスから
DeletionTaskId
を取得して、削除タスクのステータスを確認する必要があります。 -
削除のステータスを確認するには、 を呼び出します。GetServiceLinkedRoleDeletionStatus。 リクエストで、 を指定します
DeletionTaskId
。削除タスクのステータスは、
NOT_STARTED
、IN_PROGRESS
、SUCCEEDED
、またはFAILED
となります。削除が失敗した場合は、失敗した理由がコールによって返され、トラブルシューティングが可能になります。