AWS CodeDeploy
ユーザーガイド (API バージョン 2014-10-06)

CodeDeploy のアクセス権限のリファレンス

アクセスコントロール をセットアップし、IAM アイデンティティにアタッチできるアクセス権限ポリシー(アイデンティティベースのポリシー)を作成するときは、以下の表をリファレンスとして使用できます。この表には、各 CodeDeploy API オペレーション、アクションを実行するためのアクセス権限を付与できる対応するアクション、およびアクセス権限を付与するためのリソース ARN の形式が示されています。ポリシーの [Action] フィールドでアクションを指定し、ポリシーの [Resource] フィールドでリソース値としてワイルドカード文字 (*) を使用して、または使用せずに ARN を指定します。

CodeDeploy ポリシーで AWS 全体の条件キーを使用して、条件を表現することができます。AWS 全体を対象とするすべてのキーのリストについては、IAM ユーザーガイドの「利用可能なキー」を参照してください。

アクションを指定するには、API オペレーション名の前に codedeploy: プレフィックスを使用します (例: codedeploy:GetApplicationcodedeploy:CreateApplication)。複数のアクションを単一のステートメントで指定する場合は、カンマで区切ります (例: "Action": ["codedeploy:action1", "codedeploy:action2"])。

ワイルドカード文字の使用

ARN でワイルドカード文字 (*) を使用して、複数のアクションまたはリソースを指定できます。たとえば、codedeploy:* は CodeDeploy のすべてのアクションを指定し、codedeploy:Get*Get という単語で始まるすべての AWS CodeDeploy アクションを指定します次の例では、West で始まり、名前が Test で始まるアプリケーションに関連付けられている名前を持つすべてのデプロイグループにアクセス権限を付与します。

arn:aws:codedeploy:us-west-2:80398EXAMPLE:deploymentgroup:Test*/West*

表に表示されている次のリソースでワイルドカードを使用できます。

  • application-name

  • deployment-group-name

  • deployment-configuration-name

  • instance-ID

ワイルドカードは region または account-id では使用できません。ワイルドカードの詳細については、IAM ユーザーガイドの「IAM ID」を参照してください。

CodeDeploy を使用して IAM ポリシーで指定できるアクションは以下のとおりです。

注記

各アクションの ARN ではリソースの後にコロン (:) が続きます。また、リソースの後にスラッシュ (/) を使用できます。詳細については、「CodeDeploy の ARN の例」を参照してください。

表の右上隅に矢印 () が表示された場合、その表は新しいウィンドウで開くことができます。ウィンドウを閉じるには、右下隅にある閉じるボタン (X) を選択します。

CodeDeploy API オペレーションおよびアクションで必要なアクセス許可

CodeDeploy API オペレーション 必要なアクセス権限 (API アクション) リソース

AddTagsToOnPremisesInstances

codedeploy:AddTagsToOnPremisesInstances

1 つ以上のオンプレミスインスタンスにタグを追加するために必要です。

arn:aws:codedeploy:region:account-id:instance:instance-ID

BatchGetApplicationRevisions

codedeploy:BatchGetApplicationRevisions

IAM ユーザーに関連付けられた複数のアプリケーションリビジョンに関する情報を取得するために必要です。

arn:aws:codedeploy:region:account-id:application:application-name

BatchGetApplications

codedeploy:BatchGetApplications

IAM ユーザーに関連付けられた複数のアプリケーションに関する情報を取得するために必要です。

arn:aws:codedeploy:region:account-id:application:*

BatchGetDeploymentGroups

codedeploy:BatchGetDeploymentGroups

IAM ユーザーに関連付けられた複数のデプロイグループに関する情報を取得するために必要です。

arn:aws:codedeploy:region:account-id:deploymentgroup:application-name/deployment-group-name

BatchGetDeploymentInstances codedeploy:BatchGetDeploymentInstances

デプロイグループの一部である 1 つ以上のインスタンスに関する情報を取得するために必要です。

arn:aws:codedeploy:region:account-id:deploymentgroup:application-name/deployment-group-name

BatchGetDeployments

codedeploy:BatchGetDeployments

IAM ユーザーに関連付けられた複数のデプロイに関する情報を取得するために必要です。

arn:aws:codedeploy:region:account-id:deploymentgroup:application-name/deployment-group-name

BatchGetOnPremisesInstances

codedeploy:BatchGetOnPremisesInstances

1 つ以上のオンプレミスインスタンスに関する情報を取得するために必要です。

arn:aws:codedeploy:region:account-id:*

ContinueDeployment

codedeploy:ContinueDeployment

Blue/Green デプロイ中に、Elastic Load Balancing ロードバランサーを使用して置き換え先環境にインスタンスを登録するプロセスを開始するために必要です。

arn:aws:codedeploy:region:account-id:deploymentgroup:application-name/deployment-group-name

CreateApplication

codedeploy:CreateApplication

IAM ユーザーに関連付けられたアプリケーションを作成するために必要です。

arn:aws:codedeploy:region:account-id:application:application-name

CreateDeployment ¹

codedeploy:CreateDeployment

IAM ユーザーに関連付けられたアプリケーションのデプロイを作成するために必要です。

arn:aws:codedeploy:region:account-id:deploymentgroup:application-name/deployment-group-name

CreateDeploymentConfig

codedeploy:CreateDeploymentConfig

IAM ユーザーに関連付けられたカスタムデプロイ設定を作成するために必要です。

arn:aws:codedeploy:region:account-id:deploymentconfig:deployment-configuration-name

CreateDeploymentGroup

codedeploy:CreateDeploymentGroup

IAM ユーザーに関連付けられたアプリケーションのデプロイグループを作成するために必要です。

arn:aws:codedeploy:region:account-id:deploymentgroup:application-name/deployment-group-name

DeleteApplication

codedeploy:DeleteApplication

IAM ユーザーに関連付けられたアプリケーションを削除するために必要です。

arn:aws:codedeploy:region:account-id:application:application-name

DeleteDeploymentConfig

codedeploy:DeleteDeploymentConfig

IAM ユーザーに関連付けられたカスタムデプロイ設定を削除するために必要です。

arn:aws:codedeploy:region:account-id:deploymentconfig:deployment-configuration-name

DeleteDeploymentGroup

codedeploy:DeleteDeploymentGroup

IAM ユーザーに関連付けられたアプリケーションのデプロイグループを削除するために必要です。

arn:aws:codedeploy:region:account-id:deploymentgroup:application-name/deployment-group-name

DeregisterOnPremisesInstance

codedeploy:DeregisterOnPremisesInstance

オンプレミスインスタンスを登録解除するために必要です。

arn:aws:codedeploy:region:account-id:instance:instance-ID

GetApplication

codedeploy:GetApplication

IAM ユーザーに関連付けられた単一のアプリケーションに関する情報を取得するために必要です。

arn:aws:codedeploy:region:account-id:application:application-name

GetApplicationRevision

codedeploy:GetApplicationRevision

IAM ユーザーに関連付けられたアプリケーションの単一のアプリケーションのリビジョンに関する情報を取得するために必要です。

arn:aws:codedeploy:region:account-id:application:application-name

GetDeployment

codedeploy:GetDeployment

IAM ユーザーに関連付けられたアプリケーションのデプロイグループへの単一のデプロイに関する情報を取得するために必要です。

arn:aws:codedeploy:region:account-id:deploymentgroup:application-name/deployment-group-name

GetDeploymentConfig

codedeploy:GetDeploymentConfig

IAM ユーザーに関連付けられた単一のデプロイ設定に関する情報を取得するために必要です。

arn:aws:codedeploy:region:account-id:deploymentconfig:deployment-configuration-name

GetDeploymentGroup

codedeploy:GetDeploymentGroup

IAM ユーザーに関連付けられたアプリケーションの単一のデプロイグループに関する情報を取得するために必要です。

arn:aws:codedeploy:region:account-id:deploymentgroup:application-name/deployment-group-name

GetDeploymentInstance

codedeploy:GetDeploymentInstance

IAM ユーザーに関連付けられたデプロイの単一のインスタンスに関する情報を取得するために必要です。

arn:aws:codedeploy:region:account-id:deploymentgroup:application-name/deployment-group-name

GetOnPremisesInstance

codedeploy:GetOnPremisesInstance

単一のオンプレミスインスタンスに関する情報を取得するために必要です。

arn:aws:codedeploy:region:account-id:instance:instance-ID

ListApplicationRevisions

codedeploy:ListApplicationRevisions

IAM ユーザーに関連付けられたアプリケーションのすべてのアプリケーションリビジョンに関する情報を取得するために必要です。

arn:aws:codedeploy:region:account-id:application:*

ListApplications

codedeploy:ListApplications

IAM ユーザーに関連付けられたすべてのアプリケーションに関する情報を取得するために必要です。

arn:aws:codedeploy:region:account-id:application:*

ListDeploymentConfigs

codedeploy:ListDeploymentConfigs

IAM ユーザーに関連付けられたすべてのデプロイ設定に関する情報を取得するために必要です。

arn:aws:codedeploy:region:account-id:deploymentconfig:*

ListDeploymentGroups

codedeploy:ListDeploymentGroups

IAM ユーザーに関連付けられたアプリケーションのすべてのデプロイグループに関する情報を取得するために必要です。

arn:aws:codedeploy:region:account-id:deploymentgroup:application-name/*

ListDeploymentInstances

codedeploy:ListDeploymentInstances

IAM ユーザーまたは AWS アカウントに関連付けられたデプロイのすべてのインスタンスに関する情報を取得するために必要です。

arn:aws:codedeploy:region:account-id:deploymentgroup:application-name/deployment-group-name

ListDeployments

codedeploy:ListDeployments

IAM ユーザーに関連付けられたデプロイグループへのすべてのデプロイに関する情報、または IAM ユーザーまたは AWS アカウントに関連付けられたすべてのデプロイに関する情報を取得するために必要です。

arn:aws:codedeploy:region:account-id:deploymentgroup:application-name/deployment-group-name

ListGitHubAccountTokenNames

codedeploy:ListGitHubAccountTokenNames

GitHub アカウントへの保存された接続の名前を一覧表示するために必要です。

arn:aws:codedeploy:region:account-id:*

ListOnPremisesInstances

codedeploy:ListOnPremisesInstances

1 つ以上のオンプレミスインスタンス名のリストを取得するために必要です。

arn:aws:codedeploy:region:account-id:*

PutLifecycleEventHookExecutionStatus

codedeploy:PutLifecycleEventHookExecutionStatus

ライフサイクルフックイベントの実行ステータスの通知を提供する場合は必須です。

arn:aws:codedeploy:region:account-id:deploymentgroup:application-name/deployment-group-name

RegisterApplicationRevision

codedeploy:RegisterApplicationRevision

IAM ユーザーに関連付けられたアプリケーションのアプリケーションリビジョンに関する情報を登録するために必要です。

arn:aws:codedeploy:region:account-id:application:application-name

RegisterOnPremisesInstance

codedeploy:RegisterOnPremisesInstance

オンプレミスインスタンスを CodeDeploy で登録するために必要です。

arn:aws:codedeploy:region:account-id:instance:instance-ID

RemoveTagsFromOnPremisesInstances

codedeploy:RemoveTagsFromOnPremisesInstances

1 つ以上のオンプレミスインスタンスからタグを削除するために必要です。

arn:aws:codedeploy:region:account-id:instance:instance-ID

SkipWaitTimeForInstanceTermination

codedeploy:SkipWaitTimeForInstanceTermination

指定された待機時間をオーバーライドし、元の環境でインスタンスを直ちに終了させるために Blue/Green デプロイで必要です。

arn:aws:codedeploy:region:account-id:deploymentgroup:application-name/deployment-group-name

StopDeployment

codedeploy:StopDeployment

IAM ユーザーに関連付けられたアプリケーションのデプロイグループへの進行中のデプロイを停止するために必要です。

arn:aws:codedeploy:region:account-id:deploymentgroup:application-name/deployment-group-name

UpdateApplication ³

codedeploy:UpdateApplication

IAM ユーザーに関連付けられたアプリケーションに関する情報を変更するために必要です。

arn:aws:codedeploy:region:account-id:application:application-name

UpdateDeploymentGroup ³

codedeploy:UpdateDeploymentGroup

IAM ユーザーに関連付けられたアプリケーションで単一のデプロイグループに関する情報を変更するために必要です。

arn:aws:codedeploy:region:account-id:deploymentgroup:application-name/deployment-group-name

¹ CreateDeployment アクセス権限を指定する場合は、デプロイ設定に GetDeploymentConfig アクセス権限を指定し、アプリケーションリビジョンに GetApplicationRevision または RegisterApplicationRevision アクセス権限も指定する必要があります。

² 特定のデプロイグループを提供する場合、ListDeployments には有効ですが、IAM ユーザーに関連付けられたすべてのデプロイを一覧表示する場合は有効ではありません。

³ UpdateApplication では、古いアプリケーション名と新しいアプリケーション名の両方に対する UpdateApplication アクセス権限が必要です。デプロイグループの名前の変更を伴う UpdateDeploymentGroup のアクションの場合、古いグループ名および新しいグループ名の両方に対して UpdateDeploymentGroup のアクセス権限が必要です。