AWS Cloud9 のサービスにリンクされたロールの使用 - AWS Cloud9

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

AWS Cloud9 のサービスにリンクされたロールの使用

AWS Cloud9 は AWS Identity and Access Management (IAM) サービスにリンクされたロールを使用します。サービスリンクロールは、AWS Cloud9 に直接リンクされた一意のタイプの IAM ロールです。サービスリンクロールは、AWS Cloud9 による事前定義済みのロールであり、ユーザーに代わってサービスから AWS の他のサービスを呼び出すために必要なすべてのアクセス許可を備えています。

サービスにリンクされたロールを使用すると、必要な許可を手動で追加する必要がなくなるため、AWS Cloud9 の設定が簡単になります。AWS Cloud9 がそのサービスにリンクされたロールの許可を定義し、AWS Cloud9 のみがそのロールを引き受けることができます。定義される許可には、信頼ポリシーと許可ポリシーが含まれており、その許可ポリシーを他の IAM エンティティに添付することはできません。

ロールを削除するには、まず関連リソースを削除します。これにより、リソースへの意図しないアクセスによる許可の削除が防止され、AWS Cloud9 リソースは保護されます。

サービスにリンクされたロールをサポートする他のサービスについては、「IAM と連携する AWS のサービス」を参照して、[Service-Linked Role (サービスにリンクされたロール)]列がはいになっているサービスを探してください。そのサービスに関するサービスにリンクされたロールのドキュメントを表示するには、リンクが設定されている [Yes] (はい) を選択します。

AWS Cloud9 のサービスにリンクされたロールの許可

AWS Cloud9 は、AWSServiceRoleForAWSCloud9 というサービスにリンクされたロールを使用します 。このサービスにリンクされたロールは、ロールを引き受ける上で cloud9.amazonaws.com サービスを信頼します。

このサービスにリンクされたロールの許可ポリシーは、AWSCloud9ServiceRolePolicy と名付けられ、指定したリソースのポリシーに示されたアクションの実行を AWS Cloud9 に許可します。

重要

License Manager を使用していて、unable to access your environment エラーが発生する場合は、古いサービスにリンクされたロールを License Manager をサポートするバージョンに置き換える必要があります。古いロールを削除するだけで置き換えることができます。更新されたロールがその後自動的に作成されます。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:RunInstances", "ec2:CreateSecurityGroup", "ec2:DescribeVpcs", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "ec2:DescribeInstances", "ec2:DescribeInstanceStatus", "cloudformation:CreateStack", "cloudformation:DescribeStacks", "cloudformation:DescribeStackEvents", "cloudformation:DescribeStackResources" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ec2:TerminateInstances", "ec2:DeleteSecurityGroup", "ec2:AuthorizeSecurityGroupIngress" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "cloudformation:DeleteStack" ], "Resource": "arn:aws:cloudformation:*:*:stack/aws-cloud9-*" }, { "Effect": "Allow", "Action": [ "ec2:CreateTags" ], "Resource": [ "arn:aws:ec2:*:*:instance/*", "arn:aws:ec2:*:*:security-group/*" ], "Condition": { "StringLike": { "aws:RequestTag/Name": "aws-cloud9-*" } } }, { "Effect": "Allow", "Action": [ "ec2:StartInstances", "ec2:StopInstances" ], "Resource": "*", "Condition": { "StringLike": { "ec2:ResourceTag/aws:cloudformation:stack-name": "aws-cloud9-*" } } }, { "Effect": "Allow", "Action": [ "ec2:StartInstances", "ec2:StopInstances" ], "Resource": [ "arn:aws:license-manager:*:*:license-configuration:*" ] }, { "Effect": "Allow", "Action": [ "iam:ListInstanceProfiles", "iam:GetInstanceProfile" ], "Resource": [ "arn:aws:iam::*:instance-profile/cloud9/*" ] }, { "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": [ "arn:aws:iam::*:role/service-role/AWSCloud9SSMAccessRole" ], "Condition": { "StringLike": { "iam:PassedToService": "ec2.amazonaws.com" } } } ] }

IAM エンティティ (ユーザー、グループ、ロールなど) に代わってサービスにリンクされたロールの作成が AWS Cloud9 に許可されるように、許可を設定する必要があります。

AWSServiceRoleForAWSCloud9 サービスにリンクされたロールの作成を AWS Cloud9 に許可するには、IAM エンティティが代行する AWS Cloud9 がサービスにリンクされたロールを作成するため必要とする IAM エンティティの許可ポリシーに次のステートメントを追加します。

{ "Effect": "Allow", "Action": [ "iam:CreateServiceLinkedRole" ], "Resource": "*", "Condition": { "StringLike": { "iam:AWSServiceName": "cloud9.amazonaws.com" } } }

または、AWS マネージドポリシー AWSCloud9User または AWSCloud9Administrator を IAM エンティティに追加できます。

AWSServiceRoleForAWSCloud9 サービスにリンクされたロールの削除を IAM エンティティに許可するには、サービスリンクされたロールを削除する必要がある IAM エンティティの許可ポリシーに次のステートメントを追加します。

{ "Effect": "Allow", "Action": [ "iam:DeleteServiceLinkedRole", "iam:GetServiceLinkedRoleDeletionStatus" ], "Resource": "*", "Condition": { "StringLike": { "iam:AWSServiceName": "cloud9.amazonaws.com" } } }

AWS Cloud9 のサービスにリンクされたロールの作成

サービスにリンクされたロールを手動で作成する必要はありません。AWS Cloud9開発環境を作成すると、AWS Cloud9 はサービスにリンクされたロールを作成します。

AWS Cloud9 のサービスにリンクされたロールの編集

AWS Cloud9 で AWSServicerOLEforAWSCloud9 サービスリンクロールを編集できません。たとえば、サービスにリンクされたロールを作成すると、多くのエンティティによってロールが参照される可能性があるため、ロール名を変更することはできません。ただし、IAM を使用したロールの説明の編集はできます。詳細については、「IAM ユーザーガイド」の「サービスにリンクされたロールの編集」を参照してください。

AWS Cloud9 のサービスにリンクされたロールの削除

サービスにリンクされたロールが必要な機能またはサービスが不要になった場合には、そのロールを削除することをお勧めします。そうすることで、使用していないエンティティがアクティブにモニタリングまたはメンテナンスされることがなくなります。

IAM でのサービスにリンクされたロールの削除

IAM を使ってサービスにリンクされたロールを削除する前に、そのロールで使用されている任意の AWS Cloud9 リソースを削除する必要があります。AWS Cloud9 リソースを削除するには、「環境の削除」を参照してください。

IAM コンソールを使って、AWSServiceRoleForAWSCloud9 サービスにリンクされたロールを削除することができます。詳細については、IAM ユーザーガイドの「サービスにリンクされたロールの削除」を参照してください。

AWS Cloud9 のサービスにリンクされたロールをサポートするリージョン

AWS Cloud9 は、サービスを利用できるすべてのリージョンで、サービスにリンクされたロールの使用をサポートします。詳細については、「Amazon Web Services 全般のリファレンス」の「AWS Cloud9」を参照してください。