

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

# 映像建置器和 AWS PrivateLink 界面 VPC 端點
<a name="vpc-interface-endpoints"></a>

您可以建立介面 VPC *端點*，在 VPC 和 EC2 Image Builder 之間建立私有連線。介面端點採用 [AWS PrivateLink](https://aws.amazon.com/privatelink/)技術，可讓您在沒有網際網路閘道、NAT 裝置、VPN 連線或 Direct Connect 連線的情況下，私下存取映像建置器 APIs。VPC 中的執行個體不需要公有 IP 地址，即可與映像建置器 APIs通訊。VPC 和映像建置器之間的流量不會離開 Amazon 網路。

每個介面端點都是由您子網路中的一或多個[彈性網路介面](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html)表示。建立新映像時，您可以在基礎設施組態中指定 VPC 子網路 ID。

**注意**  
您從 VPC 內存取的每個服務都有自己的界面端點，以及自己的端點政策。Image Builder 會下載 AWS TOE 元件管理員應用程式，並從 S3 儲存貯體存取受管資源以建立自訂映像。若要授予這些儲存貯體的存取權，您必須更新 S3 端點政策以允許它。如需詳細資訊，請參閱[S3 儲存貯體存取的自訂政策](#vpc-endpoint-policy-s3)。

如需 VPC 端點的詳細資訊，請參閱《Amazon VPC 使用者指南》**中的[介面 VPC 端點 (AWS PrivateLink)](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html)。

## 映像建置器 VPC 端點的考量事項
<a name="vpc-endpoint-considerations"></a>

在為映像建置器設定介面 VPC 端點之前，請務必檢閱《*Amazon VPC 使用者指南*》中的[介面端點屬性和限制](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html#vpce-interface-limitations)。

Image Builder 支援從您的 VPC 呼叫其所有 API 動作。

## 為映像建置器建立介面 VPC 端點
<a name="vpc-endpoint-create"></a>

若要為 Image Builder 服務建立 VPC 端點，您可以使用 Amazon VPC 主控台或 AWS Command Line Interface (AWS CLI)。如需詳細資訊，請參閱《Amazon VPC 使用者指南》**中的[建立介面端點](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html#create-interface-endpoint)。

使用下列服務名稱為映像建置器建立 VPC 端點：
+ com.amazonaws.*region*.imagebuilder

如果您為端點啟用私有 DNS，則可以使用區域的預設 DNS 名稱向 Image Builder 提出 API 請求，例如：`imagebuilder.us-east-1.amazonaws.com`。若要查詢適用於目標區域的端點，請參閱 中的 [EC2 Image Builder 端點和配額](https://docs.aws.amazon.com/general/latest/gr/imagebuilder.html#imagebuilder_region)*Amazon Web Services 一般參考*。

如需詳細資訊，請參閱《Amazon VPC 使用者指南》**中的[透過介面端點存取服務](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html#access-service-though-endpoint)。

## 為映像建置器建立 VPC 端點政策
<a name="vpc-endpoint-policy"></a>

您可以將端點政策連接至 VPC 端點，以控制對 Image Builder 的存取。此政策會指定下列資訊：
+ 可執行動作的主體。
+ 可執行的動作。
+ 可供執行動作的資源。

如果您在配方中使用 Amazon 受管元件，Image Builder 的 VPC 端點必須允許存取下列服務擁有的元件程式庫：

`arn:aws:imagebuilder:region:aws:component/*`

**重要**  
當非預設政策套用到 EC2 Image Builder 的介面 VPC 端點時，某些失敗的 API 請求`RequestLimitExceeded`可能不會記錄到 AWS CloudTrail 或 Amazon CloudWatch。

如需詳細資訊，請參閱《Amazon VPC 使用者指南》**中的[使用 VPC 端點控制對服務的存取](https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-endpoints-access.html)。

### S3 儲存貯體存取的自訂政策
<a name="vpc-endpoint-policy-s3"></a>

Image Builder 使用公開可用的 S3 儲存貯體來存放和存取受管資源，例如元件。它也會從單獨的 S3 儲存貯體下載 AWS TOE 元件管理應用程式。如果您在環境中為 Amazon S3 使用 VPC 端點，則需要確保您的 S3 VPC 端點政策允許 Image Builder 存取下列 S3 儲存貯體。每個 AWS 區域 (*區域*) 和應用程式環境 (*環境*) 的儲存貯體名稱都是唯一的。Image Builder 和 AWS TOE 支援下列應用程式環境：`prod`、 `preprod`和 `beta`。
+  AWS TOE 元件管理員儲存貯體：

  ```
  s3://ec2imagebuilder-toe-region-environment
  ```

  **範例：**s3：//ec2imagebuilder-toe-us-west-2-prod/\$1
+ Image Builder 受管資源儲存貯體：

  ```
  s3://ec2imagebuilder-managed-resources-region-environment/components
  ```

  **範例：**s3：//ec2imagebuilder-managed-resources-us-west-2-prod/components/\$1

### VPC 端點政策範例
<a name="vpc-endpoint-policy-examples"></a>

本節包含自訂 VPC 端點政策的範例。

**Image Builder 動作的一般 VPC 端點政策**  
下列 Image Builder 的端點政策範例拒絕刪除 Image Builder 映像和元件的許可。此範例政策也會授予執行所有其他 EC2 Image Builder 動作的許可。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": "imagebuilder:*",
            "Effect": "Allow",
            "Resource": "*"
        },
        {
            "Action": "imagebuilder:DeleteImage",
            "Effect": "Deny",
            "Resource": "*"
        },
        {
            "Action": "imagebuilder:DeleteComponent",
            "Effect": "Deny",
            "Resource": "*"
        }
    ]
}
```

------

**依組織限制存取，允許受管元件存取**  
下列範例端點政策說明如何限制對屬於您組織的身分和資源的存取，並提供對 Amazon 受管映像建置器元件的存取。將 *region*、 *principal-org-id* 和 *resource-org-id* 取代為您組織的值。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowRequestsByOrgsIdentitiesToOrgsResources",
            "Effect": "Allow",
            "Principal": {
                "AWS": "*"
            },
            "Action": "*",
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "aws:PrincipalOrgID": "principal-org-id",
                    "aws:ResourceOrgID": "resource-org-id"
                }
            }
        },
        {
            "Sid": "AllowAccessToEC2ImageBuilderComponents",
            "Effect": "Allow",
            "Principal": {
                "AWS": "*"
            },
            "Action": [
                "imagebuilder:GetComponent"
            ],
            "Resource": [
                "arn:aws:imagebuilder:us-east-1:aws:component/*"
            ]
        }
    ]
}
```

------

**Amazon S3 儲存貯體存取的 VPC 端點政策**  
下列 S3 端點政策範例示範如何提供存取 Image Builder 用來建置自訂映像的 S3 儲存貯體。將*區域*和*環境*取代為您組織的值。根據您的應用程式需求，將任何其他必要的許可新增至政策。

**注意**  
對於 Linux 映像，如果您未在映像配方中指定使用者資料，Image Builder 會新增指令碼，以在映像的建置和測試執行個體上下載並安裝 Systems Manager 代理程式。若要下載代理程式，Image Builder 會存取您建置區域的 S3 儲存貯體。  
為了確保 Image Builder 可以引導建置和測試執行個體，請將下列其他資源新增至 S3 端點政策：  
"`arn:aws:s3:::amazon-ssm-region/*`"

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "AllowImageBuilderAccessToAppAndComponentBuckets",
      "Effect": "Allow",
      "Principal": {
        "AWS": "*"
      },
      "Action": [
        "s3:GetObject"
      ],
      "Resource": [
        "arn:aws:s3:::ec2imagebuilder-toe-region-environment/*",
        "arn:aws:s3:::ec2imagebuilder-managed-resources-region-environment/components/*"
      ]
    }
  ]
}
```

------