CodeCatalyst 信頼モデルを理解する - Amazon CodeCatalyst

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

CodeCatalyst 信頼モデルを理解する

Amazon CodeCatalyst 信頼モデルにより CodeCatalyst 、 は接続された でサービスロールを引き受けることができます AWS アカウント。このモデルは、IAM ロール、 CodeCatalyst サービスプリンシパル、および CodeCatalyst スペースを接続します。信頼ポリシーは、 aws:SourceArn条件キーを使用して、 条件キーで指定された CodeCatalyst スペースにアクセス許可を付与します。この条件キーの詳細については、「IAM ユーザーガイド」の「aws:SourceArn」を参照してください。

信頼ポリシーは JSON ポリシードキュメントです。ここに、ロールを委任できる、信頼するプリンシパルを定義します。ロール信頼ポリシーは、IAMのロールに関連付けられている必須のリソースベースのポリシーです。詳細については、「IAM ユーザーガイド」の「用語と概念」を参照してください。 のサービスプリンシパルの詳細については、 CodeCatalyst「」を参照してくださいのサービスプリンシパル CodeCatalyst

次の信頼ポリシーでは、 Principal要素にリストされているサービスプリンシパルにリソースベースのポリシーからのアクセス許可が付与され、 Conditionブロックを使用してスコープダウンされたリソースへのアクセスを制限します。

"Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "codecatalyst-runner.amazonaws.com", "codecatalyst.amazonaws.com" ] }, "Action": "sts:AssumeRole", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:codecatalyst:::space/spaceId/project/*" } } } ]

信頼ポリシーでは、 CodeCatalyst サービスプリンシパルには、 CodeCatalyst スペース ID の Amazon リソースネーム (ARN) を含む aws:SourceArn条件キーを通じてアクセス許可が付与されます。ARN は次の形式を使用します。

arn:aws:codecatalyst:::space/spaceId/project/*
重要

スペース ID は、 などの条件キーでのみ使用しますaws:SourceArn。IAM ポリシーステートメントのスペース ID をリソース ARN として使用しないでください。

ベストプラクティスとして、ポリシーで可能な限りアクセス許可の範囲を絞り込みます。

  • aws:SourceArn 条件キーでワイルドカード (*) を使用して、 でスペース内のすべてのプロジェクトを指定できますproject/*

  • を使用して、スペース内の特定のプロジェクトのaws:SourceArn条件キーでリソースレベルのアクセス許可を指定できますproject/projectId

のサービスプリンシパル CodeCatalyst

リソースベースの JSON ポリシーの Principal要素を使用して、リソースへのアクセスを許可または拒否するプリンシパルを指定します。信頼ポリシーで指定できるプリンシパルには、ユーザー、ロール、アカウント、およびサービスが含まれます。アイデンティティベースのポリシーでは Principal要素を使用できません。同様に、グループが認証ではなくアクセス許可と関連し、プリンシパルが認証された IAM エンティティであるため、ポリシー (リソースベースのポリシーなど) でユーザーグループをプリンシパルとして識別することはできません。

信頼ポリシーでは、リソースベースのポリシーの AWS のサービス Principal要素またはプリンシパルをサポートする条件キーで を指定できます。サービスプリンシパルは、サービスによって定義されます。に定義されているサービスプリンシパルを次に示します CodeCatalyst。

  • codecatalyst.amazonaws.com - このサービスプリンシパルは、 CodeCatalyst へのアクセスを許可するロールに使用されます AWS。

  • codecatalyst-runner.amazonaws.com - このサービスプリンシパルは、 CodeCatalyst ワークフローのデプロイの AWS リソース CodeCatalyst へのアクセスを許可するロールに使用されます。

詳細については、「IAM ユーザーガイド」の「AWS JSON ポリシーの要素: プリンシパル」を参照してください。