AWS CodeStar Notifications および の ID とアクセスの管理 AWS CodeConnections - デベロッパーツールコンソール

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

AWS CodeStar Notifications および の ID とアクセスの管理 AWS CodeConnections

AWS Identity and Access Management (IAM) は、管理者が AWS リソースへのアクセスを安全に制御 AWS のサービス するのに役立つ です。IAM 管理者は、誰を認証 (サインイン) し、 AWS CodeStar 誰に通知と AWS CodeConnections リソースを使用する権限 (アクセス許可を持つ) を付与できるかを制御します。IAM は追加料金なしで AWS のサービス 使用できる です。

注記

新しいサービスプレフィックスで作成されたリソースのアクションcodeconnectionsを使用できます。新しいサービスプレフィックスの下にリソースを作成すると、 リソースcodeconnectionsで が使用されますARN。codestar-connections サービスプレフィックスのアクションとリソースは引き続き使用できます。IAM ポリシーでリソースを指定する場合、サービスプレフィックスはリソースのプレフィックスと一致する必要があります。

対象者

AWS Identity and Access Management (IAM) の使用方法は、 AWS CodeStar Notifications と で実行する作業によって異なります AWS CodeConnections。

サービスユーザー – AWS CodeStar 通知と AWS CodeConnections サービスを使用してジョブを実行する場合、管理者は必要な認証情報とアクセス許可を提供します。より多くの AWS CodeStar 通知と AWS CodeConnections 機能を使用して作業を行う際に、追加のアクセス許可が必要になる場合があります。アクセスの管理方法を理解しておくと、管理者に適切な許可をリクエストするうえで役立ちます。Notifications と の機能にアクセスできない場合は AWS CodeConnections、 AWS CodeStar 「」を参照してくださいAWS CodeStar 通知と AWS CodeConnections ID とアクセスのトラブルシューティング

サービス管理者 – 社内の AWS CodeStar 通知と AWS CodeConnections リソースを担当している場合は、 AWS CodeStar 通知と へのフルアクセスが許可されている可能性があります AWS CodeConnections。サービスユーザーがどの AWS CodeStar 通知、 AWS CodeConnections 機能、リソースにアクセスする必要があるかを判断するのはお客様の仕事です。その後、サービスユーザーのアクセス許可を変更するリクエストをIAM管理者に送信する必要があります。このページの情報を確認して、 の基本概念を理解しますIAM。Notifications と IAMで を使用する方法の詳細については AWS CodeConnections、 AWS CodeStar 「」を参照してくださいデベロッパーツールコンソールの 機能がどのように機能するか IAM

IAM 管理者 – IAM管理者の場合は、 AWS CodeStar 通知と へのアクセスを管理するポリシーの作成方法の詳細を知りたい場合があります AWS CodeConnections。で使用できる AWS CodeStar 通知と AWS CodeConnections アイデンティティベースのポリシーの例を表示するにはIAM、「」を参照してください アイデンティティベースポリシーの例

アイデンティティを使用した認証

認証は、アイデンティティ認証情報 AWS を使用して にサインインする方法です。として、ユーザーとして、またはロールを引き受けることで認証 ( にサインイン AWS) される必要があります。 AWS アカウントのルートユーザー IAM IAM

ID ソースを介して提供された認証情報を使用して、フェデレーティッド ID AWS として にサインインできます。 AWS IAM Identity Center (IAM Identity Center) ユーザー、会社のシングルサインオン認証、Google または Facebook の認証情報は、フェデレーティッド ID の例です。フェデレーティッド ID としてサインインすると、管理者は以前にIAMロールを使用して ID フェデレーションをセットアップしていました。フェデレーション AWS を使用して にアクセスすると、間接的にロールを引き受けることになります。

ユーザーのタイプに応じて、 AWS Management Console または AWS アクセスポータルにサインインできます。へのサインインの詳細については AWS、 AWS サインイン ユーザーガイド「 へのサインイン方法 AWS アカウント」を参照してください。

AWS プログラムで にアクセスする場合、 はソフトウェア開発キット (SDK) とコマンドラインインターフェイス (CLI) AWS を提供し、認証情報を使用してリクエストに暗号化して署名します。 AWS ツールを使用しない場合は、自分でリクエストに署名する必要があります。推奨される方法を使用してリクエストを自分で署名する方法の詳細については、 IAM ユーザーガイド「リクエストの署名 AWS API」を参照してください。

使用する認証方法を問わず、追加セキュリティ情報の提供をリクエストされる場合もあります。例えば、 では、アカウントのセキュリティを高めるために多要素認証 (MFA) を使用する AWS ことをお勧めします。詳細については、AWS IAM Identity Center 「 ユーザーガイド」の「多要素認証の使用」および「 ユーザーガイド」の「多要素認証の使用 (MFA) AWS」を参照してください。 IAM

AWS アカウントのルートユーザー

を作成するときは AWS アカウント、アカウント内のすべての および リソースへの AWS のサービス 完全なアクセス権を持つ 1 つのサインイン ID から始めます。この ID は AWS アカウント ルートユーザーと呼ばれ、アカウントの作成に使用した E メールアドレスとパスワードでサインインしてアクセスします。日常的なタスクには、ルートユーザーを使用しないことを強くお勧めします。ルートユーザーの認証情報は保護し、ルートユーザーでしか実行できないタスクを実行するときに使用します。ルートユーザーとしてサインインする必要があるタスクの完全なリストについては、IAM「 ユーザーガイド」の「ルートユーザーの認証情報を必要とするタスク」を参照してください。

IAM ユーザーとグループ

IAM ユーザーとは、1 人のユーザーまたはアプリケーションに対して特定のアクセス許可 AWS アカウント を持つ 内の ID です。可能であれば、パスワードやアクセスキーなどの長期的な認証情報を持つIAMユーザーを作成する代わりに、一時的な認証情報に依存することをお勧めします。ただし、IAMユーザーとの長期的な認証情報を必要とする特定のユースケースがある場合は、アクセスキーをローテーションすることをお勧めします。詳細については、IAM「 ユーザーガイド」の「長期的な認証情報を必要とするユースケースのアクセスキーを定期的にローテーションする」を参照してください。

IAM グループは、IAMユーザーのコレクションを指定する ID です。グループとしてサインインすることはできません。グループを使用して、複数のユーザーに対して一度に権限を指定できます。多数のユーザーグループがある場合、グループを使用することで権限の管理が容易になります。例えば、 という名前のグループがありIAMAdmins、そのグループにIAMリソースを管理するアクセス許可を付与できます。

ユーザーは、ロールとは異なります。ユーザーは 1 人の人または 1 つのアプリケーションに一意に関連付けられますが、ロールはそれを必要とする任意の人が引き受けるようになっています。ユーザーには永続的な長期の認証情報がありますが、ロールでは一時認証情報が提供されます。詳細については、IAM「 ユーザーガイド」の「 (ロールではなく) IAM ユーザーを作成するタイミング」を参照してください。

IAM ロール

IAM ロールは、特定のアクセス許可 AWS アカウント を持つ 内の ID です。ユーザーと似ていますがIAM、特定の人物には関連付けられていません。IAM ロール を切り替える AWS Management Console ことで、 でロールを一時的に引き受けることができます。または オペレーションを AWS CLI AWS API呼び出すか、カスタム を使用してロールを引き受けることができますURL。ロールの使用方法の詳細については、 IAM ユーザーガイドIAM「ロールの使用」を参照してください。

IAM 一時的な認証情報を持つ ロールは、以下の状況で役立ちます。

  • フェデレーションユーザーアクセス – フェデレーティッド ID に許可を割り当てるには、ロールを作成してそのロールの許可を定義します。フェデレーティッド ID が認証されると、その ID はロールに関連付けられ、ロールで定義されている許可が付与されます。フェデレーションのロールの詳細については、 IAM ユーザーガイド「サードパーティー ID プロバイダーのロールの作成」を参照してください。IAM Identity Center を使用する場合は、アクセス許可セットを設定します。ID が認証された後にアクセスできる内容を制御するために、IAMIdentity Center はアクセス許可セットを のロールに関連付けますIAM。アクセス許可セットの詳細については、「AWS IAM Identity Center ユーザーガイド」の「アクセス許可セット」を参照してください。

  • 一時的なIAMユーザーアクセス許可 – IAM ユーザーまたはロールは、特定のタスクに対して異なるアクセス許可を一時的に引き受けるIAMロールを引き受けることができます。

  • クロスアカウントアクセス — IAMロールを使用して、別のアカウントの誰か (信頼できるプリンシパル) が自分のアカウントのリソースにアクセスすることを許可できます。クロスアカウントアクセスを許可する主な方法は、ロールを使用することです。ただし、一部の では AWS のサービス、 (プロキシとしてロールを使用する代わりに) リソースに直接ポリシーをアタッチできます。クロスアカウントアクセスのロールとリソースベースのポリシーの違いについては、IAM「 ユーザーガイド」の「 のクロスアカウントリソースアクセスIAM」を参照してください。

  • クロスサービスアクセス — 他の の機能 AWS のサービス を使用するものもあります AWS のサービス。例えば、 サービスで呼び出しを行う場合、そのサービスが Amazon でアプリケーションを実行EC2したりAmazon S3にオブジェクトを保存したりするのが一般的です。サービスでは、呼び出し元プリンシパルの許可、サービスロール、またはサービスリンクロールを使用してこれを行う場合があります。

    • 転送アクセスセッション (FAS) – IAM ユーザーまたはロールを使用して でアクションを実行すると AWS、プリンシパルと見なされます。一部のサービスを使用する際に、アクションを実行することで、別のサービスの別のアクションがトリガーされることがあります。FAS は、 を呼び出すプリンシパルのアクセス許可と AWS のサービス、ダウンストリームサービス AWS のサービス へのリクエストのリクエストを組み合わせて使用します。FAS リクエストは、サービスが他の AWS のサービス または リソースとのやり取りを完了する必要があるリクエストを受け取った場合にのみ行われます。この場合、両方のアクションを実行するための権限が必要です。FAS リクエストを行う際のポリシーの詳細については、「アクセスセッションの転送」を参照してください。

    • サービスロール – サービスロールは、ユーザーに代わってアクションを実行するためにサービスが引き受けるIAMロールです。IAM 管理者は、 内からサービスロールを作成、変更、削除できますIAM。詳細については、IAM「 ユーザーガイド」の「 にアクセス許可を委任するロールの作成 AWS のサービス」を参照してください。

    • サービスにリンクされたロール – サービスにリンクされたロールは、 にリンクされたサービスロールの一種です AWS のサービス。サービスは、ユーザーに代わってアクションを実行するロールを引き受けることができます。サービスにリンクされたロールは に表示され AWS アカウント 、 サービスによって所有されます。IAM 管理者は、サービスにリンクされたロールのアクセス許可を表示できますが、編集することはできません。

  • Amazon で実行されているアプリケーション EC2 – IAMロールを使用して、EC2インスタンスで実行され、 AWS CLI または AWS API リクエストを行うアプリケーションの一時的な認証情報を管理できます。これは、EC2インスタンス内にアクセスキーを保存するよりも望ましいです。EC2 インスタンスに AWS ロールを割り当て、そのすべてのアプリケーションで使用できるようにするには、インスタンスにアタッチされたインスタンスプロファイルを作成します。インスタンスプロファイルには ロールが含まれており、EC2インスタンスで実行されているプログラムが一時的な認証情報を取得できるようにします。詳細については、IAM「 ユーザーガイド」のIAM「ロールを使用して Amazon EC2インスタンスで実行されているアプリケーションにアクセス許可を付与する」を参照してください。

IAM ロールとIAMユーザーのどちらを使用するかについては、IAM「 ユーザーガイド」の「 (ユーザーではなく) IAMロールを作成するタイミング」を参照してください。

ポリシーを使用したアクセスの管理

でアクセスを制御するには、ポリシー AWS を作成し、 AWS ID またはリソースにアタッチします。ポリシーは AWS 、アイデンティティまたはリソースに関連付けられているときにアクセス許可を定義するオブジェクトです。 は、プリンシパル (ユーザー、ルートユーザー、またはロールセッション) がリクエストを行うときに、これらのポリシー AWS を評価します。ポリシーでの権限により、リクエストが許可されるか拒否されるかが決まります。ほとんどのポリシーはJSONドキュメント AWS として に保存されます。JSON ポリシードキュメントの構造と内容の詳細については、IAM「 ユーザーガイド」のJSON「ポリシーの概要」を参照してください。

管理者はポリシーを使用して AWS JSON、誰が何にアクセスできるかを指定できます。つまり、どのプリンシパルがどのリソースに対してどのような条件下でアクションを実行できるかということです。

デフォルトでは、ユーザーやロールに権限はありません。必要なリソースに対してアクションを実行するアクセス許可をユーザーに付与するには、IAM管理者はIAMポリシーを作成できます。その後、管理者はIAMポリシーをロールに追加し、ユーザーはロールを引き受けることができます。

IAM ポリシーは、オペレーションの実行に使用する方法に関係なく、アクションのアクセス許可を定義します。例えば、iam:GetRoleアクションを許可するポリシーがあるとします。そのポリシーを持つユーザーは、 AWS Management Console、、 AWS CLIまたは AWS からロール情報を取得できますAPI。

アイデンティティベースのポリシー

ID ベースのポリシーは、IAMユーザー、ユーザーのグループ、ロールなどの ID にアタッチできるJSONアクセス許可ポリシードキュメントです。これらのポリシーは、ユーザーとロールが実行できるアクション、リソース、および条件をコントロールします。ID ベースのポリシーを作成する方法については、IAM「 ユーザーガイド」のIAM「ポリシーの作成」を参照してください。

アイデンティティベースのポリシーは、さらにインラインポリシーまたはマネージドポリシーに分類できます。インラインポリシーは、単一のユーザー、グループ、またはロールに直接埋め込まれています。マネージドポリシーは、 内の複数のユーザー、グループ、ロールにアタッチできるスタンドアロンポリシーです AWS アカウント。管理ポリシーには AWS 、管理ポリシーとカスタマー管理ポリシーが含まれます。マネージドポリシーまたはインラインポリシーを選択する方法については、 IAM ユーザーガイド「マネージドポリシーとインラインポリシーの選択」を参照してください。

AWS CodeConnections アクセス許可リファレンス

次の表に、各 AWS CodeConnections APIオペレーション、アクセス許可を付与できる対応するアクション、アクセス許可を付与ARNするために使用するリソースの形式を示します。は、その AWS CodeConnections APIsで許可されるアクションの範囲に基づいてテーブルにグループ化されますAPI。IAM ID にアタッチできるアクセス許可ポリシー (アイデンティティベースのポリシー) を記述する場合は、このポリシーを参照してください。

アクセス許可ポリシーを作成するときに、ポリシーの Action フィールドでアクションを指定します。ポリシーの Resource フィールドのリソース値は、ワイルドカード文字 (*) の有無にかかわらずARN、 として指定します。

接続ポリシーで条件を示すには、ここで説明され、条件キー に一覧表示されている条件キーを使用します。 AWS全体の条件キーを使用することもできます。 AWS全体のキーの完全なリストについては、「 ユーザーガイド」の「使用可能なキー」を参照してください。 IAM

アクションを指定するには、codeconnectionsプレフィックスの後にAPIオペレーション名 (例: codeconnections:ListConnectionsまたは ) を使用しますcodeconnections:CreateConnection

ワイルドカードの使用

複数のアクションまたはリソースを指定するには、 でワイルドカード文字 (*) を使用しますARN。例えば、 codeconnections:*はすべての AWS CodeConnections アクションを指定し、 という単語で始まるすべての AWS CodeConnections アクションcodeconnections:Get*を指定しますGet。次の例では、MyConnection で始まる名前のすべてのリソースへのアクセスを許可します。

arn:aws:codeconnections:us-west-2:account-ID:connection/*

ワイルドカードは、 でのみ使用できます。connection リソースを次の表に示します。ワイルドカードは では使用できません region または account-id リソースの使用料金を見積もることができます。ワイルドカードの詳細については、IAM「 ユーザーガイドIAM」の「識別子」を参照してください。

接続を管理するアクセス許可

AWS CLI または を使用して接続SDKを表示、作成、または削除するように指定されたロールまたはユーザーには、以下に制限されたアクセス許可が必要です。

注記

次のアクセス許可のみでは、コンソールでの接続を完了または使用することはできません。接続を完了するためのアクセス許可 でアクセス許可を追加する必要があります。

codeconnections:CreateConnection codeconnections:DeleteConnection codeconnections:GetConnection codeconnections:ListConnections

スクロールバーを使用して、テーブルの残りの部分を確認します。

AWS CodeConnections 接続を管理するために必要なアクセス許可
AWS CodeConnections アクション 必要な許可 リソース

CreateConnection

codeconnections:CreateConnection

CLI または コンソールを使用して接続を作成するには必要です。

arn:aws:codeconnections:region:account-id:接続/connection-id

DeleteConnection

codeconnections:DeleteConnection

CLI または コンソールを使用して接続を削除するには必要です。

arn:aws:codeconnections:region:account-id:接続/connection-id

GetConnection

codeconnections:GetConnection

CLI または コンソールを使用して接続の詳細を表示するために必要です。

arn:aws:codeconnections:region:account-id:接続/connection-id

ListConnections

codeconnections:ListConnections

CLI または コンソールを使用してアカウント内のすべての接続を一覧表示するために必要です。

arn:aws:codeconnections:region:account-id:接続/connection-id

これらのオペレーションでは、次の条件キーがサポートされます。

アクション 条件キー

codeconnections:CreateConnection

codeconnections:ProviderType

codeconnections:DeleteConnection 該当なし
codeconnections:GetConnection 該当なし
codeconnections:ListConnections codeconnections:ProviderTypeFilter

ホストを管理するためのアクセス許可

AWS CLI ホストを表示、作成、または削除SDKするために または を使用するように指定されたロールまたはユーザーには、以下に限定されるアクセス許可が必要です。

注記

次のアクセス許可のみでは、ホストでの接続を完了または使用することはできません。ホスト設定のアクセス許可 でアクセス許可を追加する必要があります。

codeconnections:CreateHost codeconnections:DeleteHost codeconnections:GetHost codeconnections:ListHosts

スクロールバーを使用して、テーブルの残りの部分を確認します。

AWS CodeConnections ホストを管理するために必要なアクセス許可
AWS CodeConnections アクション 必要な許可 リソース

CreateHost

codeconnections:CreateHost

CLI または コンソールを使用してホストを作成するのに必要です。

arn:aws:codeconnections:region:account-id:host/host-id

DeleteHost

codeconnections:DeleteHost

CLI または コンソールを使用してホストを削除するには必要です。

コード接続:region:account-id:host/host-id

GetHost

codeconnections:GetHost

CLI または コンソールを使用してホストの詳細を表示するために必要です。

arn:aws:codeconnections:region:account-id:host/host-id

ListHosts

codeconnections:ListHosts

CLI または コンソールを使用してアカウント内のすべてのホストを一覧表示するために必要です。

arn:aws:codeconnections:region:account-id:host/host-id

これらのオペレーションでは、次の条件キーがサポートされます。

アクション 条件キー

codeconnections:CreateHost

codeconnections:ProviderType

codeconnections:DeleteHost 該当なし
codeconnections:GetHost 該当なし
codeconnections:ListHosts codeconnections:ProviderTypeFilter

接続を完了するためのアクセス許可

コンソールで接続を管理するように指定されたロールまたはユーザーは、コンソールで接続を完了し、インストールを作成するために必要なアクセス許可を持っている必要があります。これには、プロバイダーへのハンドシェイクの許可と、使用する接続用のインストールの作成が含まれます。上記のアクセス許可に加えて、次のアクセス許可を使用します。

以下のIAMオペレーションは、ブラウザベースのハンドシェイクを実行するときにコンソールで使用されます。ListInstallationTargetsGetInstallationUrlStartOAuthHandshakeUpdateConnectionInstallationはIAMポリシーアクセス許可GetIndividualAccessTokenです。これらはAPIアクションではありません。

codeconnections:GetIndividualAccessToken codeconnections:GetInstallationUrl codeconnections:ListInstallationTargets codeconnections:StartOAuthHandshake codeconnections:UpdateConnectionInstallation

これに基づいて、コンソールで接続を使用、作成、更新、または削除するには、次のアクセス許可が必要です。

codeconnections:CreateConnection codeconnections:DeleteConnection codeconnections:GetConnection codeconnections:ListConnections codeconnections:UseConnection codeconnections:ListInstallationTargets codeconnections:GetInstallationUrl codeconnections:StartOAuthHandshake codeconnections:UpdateConnectionInstallation codeconnections:GetIndividualAccessToken

スクロールバーを使用して、テーブルの残りの部分を確認します。

AWS CodeConnections 接続を完了するために必要なアクセス許可
AWS CodeConnections アクション 必要な許可 リソース

GetIndividualAccessToken

codeconnections:GetIndividualAccessToken

コンソールを使用接続を完了するために必要です。これはIAMポリシーアクセス許可のみであり、APIアクションではありません。

arn:aws:codeconnections:region:account-id:接続/connection-id

GetInstallationUrl

codeconnections:GetInstallationUrl

コンソールを使用して接続を完了するために必要です。これはIAMポリシーアクセス許可のみであり、APIアクションではありません。

arn:aws:codeconnections:region:account-id:接続/connection-id

ListInstallationTargets

codeconnections:ListInstallationTargets

コンソールを使用して接続を完了するために必要です。これはIAMポリシーアクセス許可のみであり、APIアクションではありません。

arn:aws:codeconnections:region:account-id:接続/connection-id

StartOAuthHandshake

codeconnections:StartOAuthHandshake

コンソールを使用して接続を完了するために必要です。これはIAMポリシーアクセス許可のみであり、APIアクションではありません。

arn:aws:codeconnections:region:account-id:接続/connection-id

UpdateConnectionInstallation

codeconnections:UpdateConnectionInstallation

コンソールを使用して接続を完了するために必要です。これはIAMポリシーアクセス許可のみであり、APIアクションではありません。

arn:aws:codeconnections:region:account-id:接続/connection-id

これらのオペレーションでは、次の条件キーがサポートされます。

アクション 条件キー
codeconnections:GetIndividualAccessToken codeconnections:ProviderType
codeconnections:GetInstallationUrl codeconnections:ProviderType

codeconnections:ListInstallationTargets

該当なし

codeconnections:StartOAuthHandshake codeconnections:ProviderType
codeconnections:UpdateConnectionInstallation codeconnections:InstallationId

ホスト設定のアクセス許可

コンソールで接続を管理するように指定されたロールまたはユーザーは、コンソールでホストをセットアップするために必要なアクセス許可が必要です。これには、プロバイダーへのハンドシェイクの許可とホストアプリのインストールが含まれます。上記のホストのアクセス許可に加えて、次のアクセス許可を使用します。

以下のIAMオペレーションは、ブラウザベースのホスト登録を実行するときにコンソールで使用されます。 RegisterAppCode および StartAppRegistrationHandshakeはIAMポリシーアクセス許可です。これらはAPIアクションではありません。

codeconnections:RegisterAppCode codeconnections:StartAppRegistrationHandshake

これに基づき、以下のアクセス許可を使用して、コンソールでホストを必要とする接続 (インストール済プロバイダータイプなど) を使用、作成、更新、または削除します。

codeconnections:CreateConnection codeconnections:DeleteConnection codeconnections:GetConnection codeconnections:ListConnections codeconnections:UseConnection codeconnections:ListInstallationTargets codeconnections:GetInstallationUrl codeconnections:StartOAuthHandshake codeconnections:UpdateConnectionInstallation codeconnections:GetIndividualAccessToken codeconnections:RegisterAppCode codeconnections:StartAppRegistrationHandshake

スクロールバーを使用して、テーブルの残りの部分を確認します。

AWS CodeConnections ホストセットアップを完了するために必要なアクセス許可
接続アクション 必要な許可 リソース

RegisterAppCode

codeconnections:RegisterAppCode

コンソールを使用してホストのセットアップを完了するために必要です。これはIAMポリシーアクセス許可のみであり、APIアクションではありません。

arn:aws:codeconnections:region:account-id:host/host-id

StartAppRegistrationHandshake

codeconnections:StartAppRegistrationHandshake

コンソールを使用してホストのセットアップを完了するために必要です。これはIAMポリシーアクセス許可のみであり、APIアクションではありません。

arn:aws:codeconnections:region:account-id:host/host-id

これらのオペレーションでは、次の条件キーがサポートされます。

サービスに接続を渡す

接続がサービスに渡ARNされる場合 (パイプライン定義で接続が提供されてパイプラインを作成または更新する場合など)、ユーザーは アクセスcodeconnections:PassConnection許可を持っている必要があります。

スクロールバーを使用して、テーブルの残りの部分を確認します。

AWS CodeConnections 接続を渡すために必要なアクセス許可
AWS CodeConnections アクション 必要な許可 リソース

PassConnection

codeconnections:PassConnection

サービスに接続を渡すために必要です。

arn:aws:codeconnections:region:account-id:接続/connection-id

このオペレーションでは、次の条件キーもサポートされます。

  • codeconnections:PassedToService

条件キーでサポートされる値
キー 有効なアクションプロバイダー

codeconnections:PassedToService

  • codeguru-reviewer

  • codepipeline.amazonaws.com

  • proton.amazonaws.com

接続の使用

のようなサービスが接続 CodePipeline を使用する場合、サービスロールには特定の接続に対するcodeconnections:UseConnectionアクセス許可が必要です。

コンソールで接続を管理するには、ユーザーポリシーに codeconnections:UseConnection アクセス許可が必要です。

スクロールバーを使用して、テーブルの残りの部分を確認します。

AWS CodeConnections 接続を使用するために必要なアクション
AWS CodeConnections アクション 必要な許可 リソース

UseConnection

codeconnections:UseConnection

接続を使用するために必要です。

arn:aws:codeconnections:region:account-id:接続/connection-id

このオペレーションでは、次の条件キーもサポートされます。

  • codeconnections:BranchName

  • codeconnections:FullRepositoryId

  • codeconnections:OwnerId

  • codeconnections:ProviderAction

  • codeconnections:ProviderPermissionsRequired

  • codeconnections:RepositoryName

条件キーでサポートされる値
キー 有効なアクションプロバイダー

codeconnections:FullRepositoryId

ユーザー名とリポジトリ名 (my-owner/my-repository など)。接続を使用して特定のリポジトリにアクセスする場合のみサポートされます。

codeconnections:ProviderPermissionsRequired

read_only または read_write

codeconnections:ProviderAction

GetBranch, ListRepositories, ListOwners, ListBranches, StartUploadArchiveToS3, GitPush, GitPull, GetUploadArchiveToS3Status, CreatePullRequestDiffComment, GetPullRequest, ListBranchCommits, ListCommitFiles, ListPullRequestComments, ListPullRequestCommits.

詳細については、次のセクションをご覧ください。

一部の機能に必要な条件キーは、時間の経過とともに変化する可能性があります。アクセスコントロールの要件で、異なるアクセス許可が必要でない限り、codeconnections:UseConnection を使用して接続へのアクセスを制御することをお勧めします。

ProviderAction でサポートされるアクセスタイプ

接続が AWS サービスによって使用されると、ソースコードプロバイダーにAPI呼び出しが行われます。例えば、 を呼び出すことで、サービスが Bitbucket https://api.bitbucket.org/2.0/repositories/username 接続のリポジトリを一覧表示する場合がありますAPI。

ProviderAction 条件キーを使用すると、プロバイダーAPIsのどの を呼び出すことができるかを制限できます。API パスは動的に生成され、パスはプロバイダーによって異なるため、ProviderAction値は URLの ではなく抽象アクション名にマッピングされますAPI。これにより、接続のプロバイダーの種類に関係なく、同じ効果を持つポリシーを書くことができます。

サポートされている各 ProviderAction 値に対して許可されるアクセスタイプは次のとおりです。以下は、IAMポリシーのアクセス許可です。これらはAPIアクションではありません。

スクロールバーを使用して、テーブルの残りの部分を確認します。

AWS CodeConnections でサポートされているアクセスタイプ ProviderAction
AWS CodeConnections アクセス許可 必要な許可 リソース

GetBranch

codeconnections:GetBranch

ブランチの最新のコミットなど、ブランチに関する情報にアクセスするために必要です。

arn:aws:codeconnections:region:account-id:接続/connection-id

ListRepositories

codeconnections:ListRepositories

所有者に属する公開および非公開リポジトリーのリストにアクセスするために必要です。

arn:aws:codeconnections:region:account-id:接続/connection-id

ListOwners

codeconnections:ListOwners

接続がアクセスできる所有者のリストにアクセスするために必要です。   

arn:aws:codeconnections:region:account-id:接続/connection-id

ListBranches

codeconnections:ListBranches

指定したリポジトリに存在するブランチのリストにアクセスするために必要です。

arn:aws:codeconnections:region:account-id:接続/connection-id

StartUploadArchiveToS3

codeconnections:StartUploadArchiveToS3

ソースコードを読み取り、Amazon S3 にアップロードするために必要です。

arn:aws:codeconnections:region:account-id:接続/connection-id

GitPush

codeconnections:GitPush

Git を使用してリポジトリに書き込むために必要です。

arn:aws:codeconnections:region:account-id:接続/connection-id

GitPull

codeconnections:GitPull

Git を使用してリポジトリから読み込むために必要です。

arn:aws:codeconnections:region:account-id:接続/connection-id

GetUploadArchiveToS3Status

codeconnections:GetUploadArchiveToS3Status

StartUploadArchiveToS3 で始まるエラーメッセージを含む、アップロードのステータスにアクセスするために必要です。

arn:aws:codeconnections:region:account-id:接続/connection-id

CreatePullRequestDiffComment

codeconnections:CreatePullRequestDiffComment

プルリクエストのコメントにアクセスするために必要です。

arn:aws:codeconnections:region:account-id:接続/connection-id

GetPullRequest

codeconnections:GetPullRequest

リポジトリのプルリクエストを表示するために必要です。

arn:aws:codeconnections:region:account-id:接続/connection-id

ListBranchCommits

codeconnections:ListBranchCommits

リポジトリブランチのコミットのリストを表示するために必要です。

arn:aws:codeconnections:region:account-id:接続/connection-id

ListCommitFiles

codeconnections:ListCommitFiles

コミットのファイルのリストを表示するために必要です。

arn:aws:codeconnections:region:account-id:接続/connection-id

ListPullRequestComments

codeconnections:ListPullRequestComments

プルリクエストのコメントのリストを表示するために必要です。

arn:aws:codeconnections:region:account-id:接続/connection-id

ListPullRequestCommits

codeconnections:ListPullRequestCommits

プルリクエストのコミットのリストを表示するために必要です。

arn:aws:codeconnections:region:account-id:接続/connection-id

接続リソースにタグ付けするためにサポートされているアクセス許可

接続リソースにタグ付けするときは、次のIAM操作を使用します。

codeconnections:ListTagsForResource codeconnections:TagResource codeconnections:UntagResource

スクロールバーを使用して、テーブルの残りの部分を確認します。

AWS CodeConnections 接続リソースのタグ付けに必要なアクション
AWS CodeConnections アクション 必要な許可 リソース

ListTagsForResource

codeconnections:ListTagsForResource

接続リソースに関連付けられているタグのリストを表示するために必要です。

arn:aws:codeconnections:region:account-id:接続/connection-id

,

arn:aws:codeconnections:region:account-id:host/host-id

TagResource

codeconnections:TagResource

接続リソースにタグを付けるために必要です。

arn:aws:codeconnections:region:account-id:接続/connection-id

,

arn:aws:codeconnections:region:account-id:host/host-id

UntagResource

codeconnections:UntagResource

接続リソースからタグを解除するために必要です。

arn:aws:codeconnections:region:account-id:接続/connection-id

,

arn:aws:codeconnections:region:account-id:host/host-id

リポジトリリンクに接続を渡す

リポジトリリンクが同期設定で提供される場合、ユーザーはリポジトリリンクARN/リソースのcodeconnections:PassRepositoryアクセス許可を持っている必要があります。

スクロールバーを使用して、テーブルの残りの部分を確認します。

AWS CodeConnections 接続を渡すために必要なアクセス許可
AWS CodeConnections アクション 必要な許可 リソース

PassRepository

codeconnections:PassRepository

リポジトリリンクを同期設定に渡すために必要です。

arn:aws:codeconnections:region:account-id:リポジトリリンク/repository-link-id

このオペレーションでは、次の条件キーもサポートされます。

  • codeconnections:PassedToService

条件キーでサポートされる値
キー 有効なアクションプロバイダー

codeconnections:PassedToService

  • cloudformation.sync.codeconnections.amazonaws.com

リポジトリリンクでサポートされる条件キー

リポジトリリンクと同期設定リソースの操作は、以下の条件キーでサポートされています。

  • codeconnections:Branch

    リクエストで渡されたブランチ名でアクセスをフィルタリングします

条件キーでサポートされるアクション
キー 有効値

codeconnections:Branch

以下のアクションが、この条件キーに対してサポートされています。
  • CreateSyncConfiguration

  • UpdateSyncConfiguration

  • GetRepositorySyncStatus

コンソールでの通知と接続の使用

通知エクスペリエンスは CodeBuild、、 CodeCommit CodeDeploy、および CodePipeline コンソール、および 設定ナビゲーションバー自体のデベロッパーツールコンソールに組み込まれています。コンソールで通知にアクセスするには、それらのサービスにいずれかの管理ポリシーを適用するか、最小限のアクセス許可のセットが必要です。これらのアクセス許可により、 AWS アカウントの AWS CodeStar 通知と AWS CodeConnections リソースの詳細を一覧表示および表示できます。最低限必要なアクセス許可よりも制限の厳しいアイデンティティベースのポリシーを作成すると、そのポリシーを持つエンティティ (IAMユーザーまたはロール) に対してコンソールは意図したとおりに機能しません。これらのコンソールへのアクセス AWS CodePipelineを含む AWS CodeBuild、、 AWS CodeCommit AWS CodeDeploy、および へのアクセスの許可の詳細については、次のトピックを参照してください。

AWS CodeStar 通知には AWS 管理ポリシーがありません。通知機能へのアクセスを提供するには、上記のいずれかのサービスに対する管理ポリシーの 1 つを適用するか、ユーザーまたはエンティティに付与するアクセス許可のレベルでポリシーを作成してから、これらのアクセス許可が必要なユーザー、グループ、またはロールにそれらのポリシーをアタッチする必要があります。詳細については、次の例を参照してください。

AWS CodeConnections には AWS 管理ポリシーがありません。接続を完了するためのアクセス許可 で詳しく説明している許可など、アクセスの許可や許可の組み合わせを使用します。

詳細については、次を参照してください。

AWS CLI または のみを呼び出すユーザーにコンソールアクセス許可を付与する必要はありません AWS API。代わりに、実行しようとしているAPIオペレーションに一致するアクションのみへのアクセスを許可します。

自分の権限の表示をユーザーに許可する

この例では、IAMユーザーがユーザー ID にアタッチされているインラインポリシーとマネージドポリシーを表示できるようにするポリシーを作成する方法を示します。このポリシーには、コンソールで、または AWS CLI または を使用してプログラムでこのアクションを実行するアクセス許可が含まれています AWS API。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ViewOwnUserInfo", "Effect": "Allow", "Action": [ "iam:GetUserPolicy", "iam:ListGroupsForUser", "iam:ListAttachedUserPolicies", "iam:ListUserPolicies", "iam:GetUser" ], "Resource": ["arn:aws:iam::*:user/${aws:username}"] }, { "Sid": "NavigateInConsole", "Effect": "Allow", "Action": [ "iam:GetGroupPolicy", "iam:GetPolicyVersion", "iam:GetPolicy", "iam:ListAttachedGroupPolicies", "iam:ListGroupPolicies", "iam:ListPolicyVersions", "iam:ListPolicies", "iam:ListUsers" ], "Resource": "*" } ] }