CodeDeploy 許可參考 - AWS CodeDeploy

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

CodeDeploy 許可參考

當您設定可附加至 IAM 身分 (身分型政策) 的存取和寫入許可政策時,請使用下表。此表格會列出每個 CodeDeploy API 作業、您可授與執行動作之權限的動作,以及用於授與權限的資源 ARN 格式。您可以在政策的 Action 欄位中指定動作。您可以使用或不使用萬用字元 (*),指定 ARN 做為政策之 Resource 欄位中的資源值。

您可以在 CodeDeploy 原則中使用 AWS寬條件金鑰來表示條件。如需完整的 AWS全金鑰清單,請參閱 IAM 使用者指南中的可用金鑰

若要指定動作,請使用 codedeploy: 字首,後面接著 API 操作名稱 (例如 codedeploy:GetApplicationcodedeploy:CreateApplication)。若要在單一陳述式中指定多個動作,請用逗號加以分隔 (例如 "Action": ["codedeploy:action1", "codedeploy:action2"])。

使用萬用字元

您可以在您的 ARN 中使用萬用字元 (*) 指定多個動作或資源。例如,codedeploy:*指定所有 CodeDeploy 動作,並codedeploy:Get*指定以該字開頭的所有 CodeDeploy 動作Get。以下範例會授予存取所有名稱開頭為 West,且和名稱開頭為 Test 應用程式建立關聯的部署群組。

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

您可以針對下表列出的資源使用萬用字元:

  • application-name

  • deployment-group-name

  • deployment-configuration-name

  • instance-ID

萬用字元無法用於 regionaccount-id。如需萬用字元的詳細資訊,請參閱《IAM 使用者指南》中的 IAM 識別符

注意

在每個動作的 ARN 中,資源後方會跟隨一個冒號 (:)。您也可以使用斜線 (/) 跟隨資源。如需詳細資訊,請參閱CodeDeploy範例 ARN

使用捲軸查看資料表的其餘部分。

CodeDeploy API 操作和動作所需的權限
CodeDeploy API 作業 所需許可 (API 動作) 資源

AddTagsToOnPremisesInstances

codedeploy:AddTagsToOnPremisesInstances

若要將標籤新增至一個或多個現場部署執行個體,則為必要許可。

arn: aws: 程式碼部署:區域:帳戶 ID: 執行個體/執行個體識別碼

BatchGetApplicationRevisions

codedeploy:BatchGetApplicationRevisions

若要取得與 使用者相關聯的多個應用程式修訂版本相關資訊,則為必要許可。

AR: aws: 程式碼部署:區域:帳戶 ID: 應用程式:應用程式名稱

BatchGetApplications

codedeploy:BatchGetApplications

若要取得與 使用者相關聯的多個應用程式相關資訊,則為必要許可。

AR: aws: 程式碼部署:區域:帳戶 ID: 應用程式:*

BatchGetDeploymentGroups

codedeploy:BatchGetDeploymentGroups

若要取得與 使用者相關聯的多個部署群組相關資訊,則為必要許可。

ARN: aws: 程式碼部署:區域:帳戶 ID: 部署群組:應用程式名稱/deployment-group-name

BatchGetDeploymentInstances codedeploy:BatchGetDeploymentInstances

若要取得部署群組中的一個或多個執行個體相關資訊,則為必要許可。

ARN: aws: 程式碼部署:區域:帳戶 ID: 部署群組:應用程式名稱/deployment-group-name

BatchGetDeployments

codedeploy:BatchGetDeployments

若要取得與 使用者相關聯的多個部署相關資訊,則為必要許可。

ARN: aws: 程式碼部署:區域:帳戶 ID: 部署群組:應用程式名稱/deployment-group-name

BatchGetOnPremisesInstances

codedeploy:BatchGetOnPremisesInstances

若要取得一個或多個現場部署執行個體的相關資訊,則為必要許可。

AR: aws: 程式碼部署:區域:帳戶識別碼:*

ContinueDeployment

codedeploy:ContinueDeployment

在藍/綠部署期間需要,才能在 Elastic Load Balancing 負載平衡器的替代環境中啟動註冊執行個體的程序。

ARN: aws: 程式碼部署:區域:帳戶 ID: 部署群組:應用程式名稱/deployment-group-name

CreateApplication

codedeploy:CreateApplication

若要建立與 使用者相關聯的應用程式,則為必要許可。

AR: aws: 程式碼部署:區域:帳戶 ID: 應用程式:應用程式名稱

CreateDeployment¹

codedeploy:CreateDeployment

若要建立與 使用者相關聯的應用程式部署,則為必要許可。

ARN: aws: 程式碼部署:區域:帳戶 ID: 部署群組:應用程式名稱/deployment-group-name

CreateDeploymentConfig

codedeploy:CreateDeploymentConfig

若要建立與 使用者相關聯的自訂部署組態,則為必要許可。

ARN:aws:代碼部署:區域:帳戶 ID:部署配置:deployment-configuration-name

CreateDeploymentGroup

codedeploy:CreateDeploymentGroup

若要建立與 使用者相關聯的應用程式部署群組,則為必要許可。

ARN: aws: 程式碼部署:區域:帳戶 ID: 部署群組:應用程式名稱/deployment-group-name

DeleteApplication

codedeploy:DeleteApplication

若要刪除與 使用者相關聯的應用程式,則為必要許可。

AR: aws: 程式碼部署:區域:帳戶 ID: 應用程式:應用程式名稱

DeleteDeploymentConfig

codedeploy:DeleteDeploymentConfig

若要刪除與 使用者相關聯的自訂部署組態,則為必要許可。

ARN:aws:代碼部署:區域:帳戶 ID:部署配置:deployment-configuration-name

DeleteDeploymentGroup

codedeploy:DeleteDeploymentGroup

若要刪除與 使用者相關聯的應用程式部署群組,則為必要許可。

ARN: aws: 程式碼部署:區域:帳戶 ID: 部署群組:應用程式名稱/deployment-group-name

DeregisterOnPremisesInstance

codedeploy:DeregisterOnPremisesInstance

若要取消註冊現場部署執行個體,則為必要許可。

arn: aws: 程式碼部署:區域:帳戶 ID: 執行個體/執行個體識別碼

GetApplication

codedeploy:GetApplication

若要取得與 使用者相關聯的單一應用程式相關資訊,則為必要許可。

AR: aws: 程式碼部署:區域:帳戶 ID: 應用程式:應用程式名稱

GetApplicationRevision

codedeploy:GetApplicationRevision

若要取得與 使用者相關聯的單一應用程式修訂版本相關資訊,則為必要許可。

AR: aws: 程式碼部署:區域:帳戶 ID: 應用程式:應用程式名稱

GetDeployment

codedeploy:GetDeployment

若要針對與 使用者相關聯的應用程式,取得部署群組的單一部署相關資訊,則為必要許可。

ARN: aws: 程式碼部署:區域:帳戶 ID: 部署群組:應用程式名稱/deployment-group-name

GetDeploymentConfig

codedeploy:GetDeploymentConfig

若要取得與 使用者相關聯的單一部署組態相關資訊,則為必要許可。

ARN:aws:代碼部署:區域:帳戶 ID:部署配置:deployment-configuration-name

GetDeploymentGroup

codedeploy:GetDeploymentGroup

若要取得與 使用者相關聯的應用程式單一部署群組相關資訊,則為必要許可。

ARN: aws: 程式碼部署:區域:帳戶 ID: 部署群組:應用程式名稱/deployment-group-name

GetDeploymentInstance

codedeploy:GetDeploymentInstance

若要取得與 使用者相關聯部署中的單一執行個體相關資訊,則為必要許可。

ARN: aws: 程式碼部署:區域:帳戶 ID: 部署群組:應用程式名稱/deployment-group-name

GetDeploymentTarget

codedeploy:GetDeploymentTarget

若要取得在 使用者相關部署中目標的相關資訊,則為必要資訊。

ARN: aws: 程式碼部署:區域:帳戶 ID: 部署群組:應用程式名稱/deployment-group-name

GetOnPremisesInstance

codedeploy:GetOnPremisesInstance

若要取得單一現場部署執行個體的相關資訊,則為必要許可。

arn: aws: 程式碼部署:區域:帳戶 ID: 執行個體/執行個體識別碼

ListApplicationRevisions

codedeploy:ListApplicationRevisions

若要取得與 使用者相關聯的所有應用程式修訂版本相關資訊,則為必要許可。

AR: aws: 程式碼部署:區域:帳戶 ID: 應用程式:*

ListApplications

codedeploy:ListApplications

若要取得與 使用者相關聯的所有應用程式相關資訊,則為必要許可。

AR: aws: 程式碼部署:區域:帳戶 ID: 應用程式:*

ListDeploymentConfigs

codedeploy:ListDeploymentConfigs

若要取得與 使用者相關聯的所有部署組態相關資訊,則為必要許可。

ARN:aws:代碼部署:區域:帳戶 ID:部署配置:*

ListDeploymentGroups

codedeploy:ListDeploymentGroups

若要取得與 使用者相關聯的所有應用程式部署群組相關資訊,則為必要許可。

ARN: aws: 程式碼部署:區域:帳戶 ID: 部署群組:應用程式名稱 /*

ListDeploymentInstances

codedeploy:ListDeploymentInstances

取得部署中與使用者或 AWS 帳戶相關聯之所有執行個體的相關資訊是必要的。

ARN: aws: 程式碼部署:區域:帳戶 ID: 部署群組:應用程式名稱/deployment-group-name

ListDeployments

codedeploy:ListDeployments

若要取得與使用者相關聯之部署群組的所有部署資訊,或取得與使用者相關聯的所有部署,則為必要項目。

ARN: aws: 程式碼部署:區域:帳戶 ID: 部署群組:應用程式名稱/deployment-group-name

ListDeploymentTargets

codedeploy:ListDeploymentTargets

取得部署中與使用者相關聯之所有目標的相關資訊是必要的。

ARN: aws: 程式碼部署:區域:帳戶 ID: 部署群組:應用程式名稱/deployment-group-name

ListGitHubAccountTokenNames

codedeploy:ListGitHubAccountTokenNames

需要取得 GitHub 帳戶的已儲存連線名稱清單。

AR: aws: 程式碼部署:區域:帳戶識別碼:*

ListOnPremisesInstances

codedeploy:ListOnPremisesInstances

若要取得一個或多個現場部署執行個體名稱的清單,則為必要許可。

AR: aws: 程式碼部署:區域:帳戶識別碼:*

PutLifecycleEventHookExecutionStatus

codedeploy:PutLifecycleEventHookExecutionStatus

若要提供生命週期關聯事件執行狀態的相關通知,則為必要許可。

ARN: aws: 程式碼部署:區域:帳戶 ID: 部署群組:應用程式名稱/deployment-group-name

RegisterApplicationRevision

codedeploy:RegisterApplicationRevision

若要註冊與 使用者相關聯的應用程式修訂版本相關資訊,則為必要許可。

AR: aws: 程式碼部署:區域:帳戶 ID: 應用程式:應用程式名稱

RegisterOnPremisesInstance

codedeploy:RegisterOnPremisesInstance

必須使用註冊內部部署執行個體 CodeDeploy。

arn: aws: 程式碼部署:區域:帳戶 ID: 執行個體/執行個體識別碼

RemoveTagsFromOnPremisesInstances

codedeploy:RemoveTagsFromOnPremisesInstances

若要從一個或多個現場部署執行個體移除標籤,則為必要許可。

arn: aws: 程式碼部署:區域:帳戶 ID: 執行個體/執行個體識別碼

SkipWaitTimeForInstanceTermination

codedeploy:SkipWaitTimeForInstanceTermination

若要在藍/綠部署中覆寫指定的等待時間,並立即在原始環境中啟動終止的執行個體,則為必要許可。

arn: aws: 程式碼部署:區域:帳戶 ID: 執行個體/執行個體識別碼

StopDeployment

codedeploy:StopDeployment

若要針對與 使用者相關聯的應用程式,停止部署群組正在進行的部署,則為必要許可。

ARN: aws: 程式碼部署:區域:帳戶 ID: 部署群組:應用程式名稱/deployment-group-name

UpdateApplication³

codedeploy:UpdateApplication

若要變更與 使用者相關聯的應用程式相關資訊,則為必要許可。

AR: aws: 程式碼部署:區域:帳戶 ID: 應用程式:應用程式名稱

UpdateDeploymentGroup³

codedeploy:UpdateDeploymentGroup

若要變更與 使用者相關聯的應用程式單一部署群組相關資訊,則為必要許可。

ARN: aws: 程式碼部署:區域:帳戶 ID: 部署群組:應用程式名稱/deployment-group-name

¹ 當您指定CreateDeployment權限時,您還必須指定部署組態的GetDeploymentConfig權限,以及/GetApplicationRevision或應用程式修訂版的RegisterApplicationRevision權限。此外,如果您在 CreateDeployment API 呼叫中包含overrideAlarmConfiguration參數,則必須指定UpdateDeploymentGroup權限。

² 在提供特定部署群組ListDeployments時有效,但不適用於列出與使用者相關聯的所有部署。

³ 針對UpdateApplication,您必須同時擁有舊應用程式名稱和新應用程式名稱的UpdateApplication權限。對於涉及變更部署群組名稱的 UpdateDeploymentGroup 動作,您必須同時擁有舊的及新的部署群組名稱的 UpdateDeploymentGroup 許可。