映像建置器的 Identity and Access Management 整合 - EC2 Image Builder

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

映像建置器的 Identity and Access Management 整合

目標對象

使用方式AWS Identity and Access Management(IAM) 會根據您的角色而有所不同:

使用身分驗證

如需如何為 中的人員和程序提供身分驗證的詳細資訊AWS 帳戶,請參閱《IAM 使用者指南》中的身分

自訂工作流程的 IAM 許可

搭配 等特定步驟動作使用自訂工作流程時RegisterImage,除了標準 Image Builder 受管政策之外,可能需要額外的 IAM 許可。本節說明自訂工作流程步驟動作所需的額外許可。

RegisterImage 步驟動作許可

RegisterImage 步驟動作需要特定的 Amazon EC2 許可,才能註冊 AMIs並選擇性地擷取快照標籤。使用 includeSnapshotTags 參數時,需要額外的許可來描述快照。

RegisterImage 步驟動作的必要許可:

對於所有資源,允許下列動作:

  • ec2:RegisterImage

  • ec2:DescribeSnapshots

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:RegisterImage", "ec2:DescribeSnapshots" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ec2:CreateTags" ], "Resource": "arn:aws:ec2:*::image/*", "Condition": { "StringEquals": { "ec2:CreateAction": "RegisterImage" } } } ] }

許可詳細資訊:

  • ec2:RegisterImage - 從快照註冊新的 AMIs 時需要

  • ec2:DescribeSnapshots - 使用 擷取快照標籤includeSnapshotTags: true以與 AMI 標籤合併時需要

  • ec2:CreateTags - 將標籤套用至已註冊的 AMI 時需要,包括映像建置器預設標籤和合併快照標籤

注意

只有在 includeSnapshotTags 參數設定為 時,才會使用 ec2:DescribeSnapshots許可true。如果您不使用此功能,您可以省略此許可。

標籤合併行為:

啟用 includeSnapshotTags 時,RegisterImage 步驟動作將:

  • 從區塊型設備映射中指定的第一個快照擷取標籤

  • 排除任何AWS預留標籤 (索引鍵開頭為 "aws:" 的標籤)

  • 將快照標籤與映像建置器的預設 AMI 註冊標籤合併

  • 當標籤索引鍵發生衝突時,給予 Image Builder 標籤優先順序

Image Builder 資源型政策

如需如何建立元件的資訊,請參閱 使用元件自訂映像建置器映像

限制映像建置器元件對特定 IP 地址的存取

下列範例會授予許可給任何使用者,以在元件上執行任何映像建置器操作。不過,要求必須源自於條件中所指定的 IP 地址範圍。

此陳述式中的條件會識別允許之 Internet Protocol Version 4 (IPv4) IP 地址的 54.240.143.* 範圍,但有一個例外:54.240.143.188。

Condition 區塊使用 IpAddressNotIpAddress條件和 aws:SourceIp 條件金鑰,這是AWS全局條件金鑰。如需這些條件索引鍵的詳細資訊,請參閱在政策中指定條件aws:sourceIp IPv4 值會使用標準 CIDR 表示法。如需詳細資訊,請參閱《IAM 使用者指南》中的 IP 地址條件運算子

JSON
{ "Version":"2012-10-17", "Id": "IBPolicyId1", "Statement": [ { "Sid": "IPAllow", "Effect": "Allow", "Action": "imagebuilder:GetComponent", "Resource": "arn:aws:imagebuilder:*::examplecomponent/*", "Condition": { "IpAddress": {"aws:SourceIp": "54.240.143.0/24"}, "NotIpAddress": {"aws:SourceIp": "54.240.143.188/32"} } } ] }