

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# Amazon IoT TwinMaker 和接口 VPC 终端节点 (Amazon PrivateLink)
<a name="vpc-interface-endpoints"></a>

您可通过创建 *VPC 接口端点*在虚拟私有云 (VPC) 和 Amazon IoT TwinMaker 之间创建私有连接。接口端点由其提供支持， Amazon IoT TwinMaker APIs 无需互联网网关[Amazon PrivateLink](https://www.amazonaws.cn/privatelink)、网络地址转换 (NAT) 设备、VPN 连接或 Di Amazon rect Connect 连接即可使用接口端点进行私密访问。 Amazon IoT TwinMaker 通过其接口端点同时支持 IPv4 和 IPv6 （双堆栈）。您的 VPC 中的实例不需要公有 IP 地址即可与之通信 Amazon IoT TwinMaker APIs。您的 VPC 和 VPC 之间的流量 Amazon IoT TwinMaker 不会离开亚马逊网络。

每个接口端点均由子网中的一个或多个[弹性网络接口](https://docs.amazonaws.cn/AWSEC2/latest/UserGuide/using-eni.html)表示。

有关更多信息，请参阅《Amazon VPC 用户指南》**中的[接口 VPC 端点 (Amazon PrivateLink)](https://docs.amazonaws.cn/vpc/latest/userguide/vpce-interface.html)。

## Amazon IoT TwinMaker VPC 终端节点的注意事项
<a name="vpc-endpoint-considerations"></a>

在为设置接口 VPC 终端节点之前 Amazon IoT TwinMaker，请查看 *Amazon VPC 用户指南*中的[接口终端节点属性和限制](https://docs.amazonaws.cn/vpc/latest/userguide/vpce-interface.html#vpce-interface-limitations)。

Amazon IoT TwinMaker 支持从您的 VPC 调用其所有 API 操作。
+ 对于数据平面 API 操作，请使用以下端点：

  ```
  data.iottwinmaker.region.amazonaws.com
  ```

  数据平面 API 操作包括以下内容：
  + [GetPropertyValue](https://docs.amazonaws.cn//iot-twinmaker/latest/apireference/API_GetPropertyValue.html)
  + [GetPropertyValueHistory](https://docs.amazonaws.cn//iot-twinmaker/latest/apireference/API_GetPropertyValueHistory.html)
  + [BatchPutPropertyValues](https://docs.amazonaws.cn//iot-twinmaker/latest/apireference/API_BatchPutPropertyValues.html)
+ 针对控制平面 API 操作，请使用以下端点：

  ```
  api.iottwinmaker.region.amazonaws.com
  ```

  支持的控制平面 API 操作包含以下内容：
  + [CreateComponentType](https://docs.amazonaws.cn//iot-twinmaker/latest/apireference/API_CreateComponentType.html)
  + [CreateEntity](https://docs.amazonaws.cn//iot-twinmaker/latest/apireference/API_CreateEntity.html)
  + [CreateScene](https://docs.amazonaws.cn//iot-twinmaker/latest/apireference/API_CreateScene.html)
  + [CreateWorkspace](https://docs.amazonaws.cn//iot-twinmaker/latest/apireference/API_CreateWorkspace.html)
  + [DeleteComponentType](https://docs.amazonaws.cn//iot-twinmaker/latest/apireference/API_DeleteComponentType.html)
  + [DeleteEntity](https://docs.amazonaws.cn//iot-twinmaker/latest/apireference/API_DeleteEntity.html)
  + [DeleteScene](https://docs.amazonaws.cn//iot-twinmaker/latest/apireference/API_DeleteScene.html)
  + [DeleteWorkspace](https://docs.amazonaws.cn//iot-twinmaker/latest/apireference/API_DeleteWorkspace.html)
  + [GetComponentType](https://docs.amazonaws.cn//iot-twinmaker/latest/apireference/API_GetComponentType.html)
  + [GetEntity](https://docs.amazonaws.cn//iot-twinmaker/latest/apireference/API_GetEntity.html)
  + [GetScene](https://docs.amazonaws.cn//iot-twinmaker/latest/apireference/API_GetScene.html)
  + [GetWorkspace](https://docs.amazonaws.cn//iot-twinmaker/latest/apireference/API_GetWorkspace.html)
  + [ListComponentTypes](https://docs.amazonaws.cn//iot-twinmaker/latest/apireference/API_ListComponentTypes.html)
  + [ListComponentTypes](https://docs.amazonaws.cn//iot-twinmaker/latest/apireference/API_ListComponentTypes.html)
  + [ListEntities](https://docs.amazonaws.cn//iot-twinmaker/latest/apireference/API_ListEntities.html)
  + [ListScenes](https://docs.amazonaws.cn//iot-twinmaker/latest/apireference/API_ListScenes.html)
  + [ListTagsForResource](https://docs.amazonaws.cn//iot-twinmaker/latest/apireference/API_ListTagsForResource.html)
  + [ListWorkspaces](https://docs.amazonaws.cn//iot-twinmaker/latest/apireference/API_ListWorkspaces.html)
  + [TagResource](https://docs.amazonaws.cn//iot-twinmaker/latest/apireference/API_TagResource.html)
  + [UntagResource](https://docs.amazonaws.cn//iot-twinmaker/latest/apireference/API_UntagResource.html)
  + [UpdateComponentType](https://docs.amazonaws.cn//iot-twinmaker/latest/apireference/API_UpdateComponentType.html)
  + [UpdateEntity](https://docs.amazonaws.cn//iot-twinmaker/latest/apireference/API_UpdateEntity.html)
  + [UpdateScene](https://docs.amazonaws.cn//iot-twinmaker/latest/apireference/API_UpdateScene.html)
  + [UpdateWorkspace](https://docs.amazonaws.cn//iot-twinmaker/latest/apireference/API_UpdateWorkspace.html)

## 为创建接口 VPC 终端节点 Amazon IoT TwinMaker
<a name="vpc-endpoint-create"></a>

您可以使用 Amazon VPC 控制台或 Amazon Command Line Interface (Amazon CLI) 为 Amazon IoT TwinMaker 服务创建 VPC 终端节点。有关更多信息，请参阅《Amazon VPC User Guide》**中的 [Creating an interface endpoint](https://docs.amazonaws.cn/vpc/latest/userguide/vpce-interface.html#create-interface-endpoint)。

使用以下服务名称为 Amazon IoT TwinMaker 其创建一个 VPC 终端节点。
+ 对于数据平面 API 操作，请使用以下服务名称：

  ```
  com.amazonaws.region.iottwinmaker.data
  ```
+ 对于控制平面 API 操作，请使用以下服务名称：

  ```
  com.amazonaws.region.iottwinmaker.api
  ```

例如，如果您为终端节点启用私有 DNS，则可以使用该终端节点的默认 DNS 名称向发 Amazon IoT TwinMaker 出 API 请求`iottwinmaker.us-east-1.amazonaws.com`。

有关更多信息，请参阅《Amazon VPC 用户指南》**中的[通过接口端点访问服务](https://docs.amazonaws.cn/vpc/latest/userguide/vpce-interface.html#access-service-though-endpoint)。

Amazon IoT TwinMaker PrivateLink 在以下区域受支持：
+ **us-east-1**

  以下可用区支持该 ControlPlane 服务：`use1-az1``use1-az2`、和`use1-az6`。

  以下可用区支持该 DataPlane 服务：`use1-az1``use1-az2`、和`use1-az4`。
+ **us-west-2**

  以下可用区支持 ControlPlane 和 DataPlane 服务：`usw2-az1``usw2-az2`、和`usw2-az3`。
+ **eu-west-1**
+ **eu-central-1**
+ **ap-southeast-1**
+ **ap-southeast-2**

有关可用区的更多信息，请参阅[您的 Amazon 资源的可用区-Resour IDs ce Acces Amazon s Manager](https://docs.amazonaws.cn/ram/latest/userguide/working-with-az-ids.html)。

## Amazon IoT TwinMaker 通过接口 VPC 终端节点进行访问
<a name="vpc-endpoint-access"></a>

创建接口终端节点时， Amazon IoT TwinMaker 会生成可用于与之通信的终端节点特定的 DNS 主机名。 Amazon IoT TwinMaker默认情况下启用私有 DNS。有关更多信息，请参阅 *Amazon VPC 用户指南*中的[使用私有托管区域](https://docs.amazonaws.cn/vpc/latest/userguide/vpc-dns.html#vpc-private-hosted-zones)。

如果为端点启用私有 DNS，则可以通过以下 VPC 端点向 Amazon IoT TwinMaker 发出 API 请求。
+ 对于数据面板 API 操作，请使用以下端点。

  ```
  data.iottwinmaker.cn-north-1.amazonaws.com.cn
  ```
+ 对于控制面板 API 操作，请使用以下端点。

  ```
  data.iottwinmaker.cn-north-1.amazonaws.com.cn
  ```

如果您为端点禁用私有 DNS，则必须执行以下操作，才能通过端点访问 Amazon IoT TwinMaker ：
+ 在 API 请求中指定 VPC 端点 URL。
  + 对于数据平面 API 操作，请使用以下端点 URL。将*vpc-endpoint-id*替换为您的 VPC 终端节点 ID 。

    ```
    vpc-endpoint-id.data.iottwinmaker.cn-north-1.vpce.amazonaws.com.cn
    ```
  + 对于控制平面 API 操作，请使用以下端点 URL。将*vpc-endpoint-id*替换为您的 VPC 终端节点 ID 。

    ```
    vpc-endpoint-id.api.iottwinmaker.cn-north-1.vpce.amazonaws.com.cn
    ```
+ 禁用主机前缀注入功能。在 Amazon CLI 调用每个 Amazon SDKs API 操作时，在服务端点前面加上各种主机前缀。这会导致 Amazon CLI 和 Amazon SDKs 在您指定 VPC 终端节点 Amazon IoT TwinMaker 时生效 URLs 。
**重要**  
您无法在 Amazon CLI 或 Amazon Tools for PowerShell中禁用主机前缀注入。这意味着，如果您禁用了私有 DNS，您将无法使用 Amazon CLI 或 Amazon Tools for PowerShell Amazon IoT TwinMaker 通过 VPC 终端节点进行访问。如果您想使用这些工具 Amazon IoT TwinMaker 通过终端节点进行访问，请启用私有 DNS。

  有关如何在中禁用主机前缀注入的更多信息 Amazon SDKs，请参阅每个 SDK 的以下文档部分：
  + [适用于 C\$1\$1 的 Amazon SDK](https://sdk.amazonaws.com/cpp/api/LATEST/struct_aws_1_1_client_1_1_client_configuration.html#a3579c1a2f2e1c9d54e99c59d27643499)
  + [适用于 Go 的 Amazon SDK](https://docs.amazonaws.cn/sdk-for-go/api/aws/#Config.WithDisableEndpointHostPrefix)
  + [适用于 Go 的 Amazon SDK](https://docs.amazonaws.cn/sdk-for-go/v2/developer-guide/configure-endpoints.html#migration) v2
  + [适用于 Java 的 Amazon SDK](https://docs.amazonaws.cn/AWSJavaSDK/latest/javadoc/com/amazonaws/ClientConfiguration.html#setDisableHostPrefixInjection-boolean-)
  + [Amazon SDK for Java 2.x](https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/core/client/config/SdkAdvancedClientOption.html)
  + [适用于 JavaScript 的 Amazon SDK](https://docs.amazonaws.cn/AWSJavaScriptSDK/latest/AWS/Config.html#hostPrefixEnabled-property)
  + [适用于 .NET 的 Amazon SDK](https://docs.amazonaws.cn/sdkfornet/v4/apidocs/items/Runtime/TClientConfig.html)
  + [适用于 PHP 的 Amazon SDK](https://docs.amazonaws.cn/aws-sdk-php/v3/api/class-Aws.AwsClient.html#___construct)
  + [适用于 Python (Boto3) 的 Amazon SDK](https://botocore.amazonaws.com/v1/documentation/api/latest/reference/config.html)
  + [适用于 Ruby 的 Amazon SDK](https://docs.amazonaws.cn/sdk-for-ruby/v3/api/Aws/IoTSiteWise/Client.html#initialize-instance_method)

有关更多信息，请参阅《Amazon VPC 用户指南》**中的[通过接口端点访问服务](https://docs.amazonaws.cn/vpc/latest/userguide/vpce-interface.html#access-service-though-endpoint)。

## 为创建 VPC 终端节点策略 Amazon IoT TwinMaker
<a name="vpc-endpoint-policy"></a>

您可以为 VPC 端点附加控制对 Amazon IoT TwinMaker的访问的端点策略。该策略指定以下信息：
+ 可执行操作的主体。
+ 可执行的操作。
+ 可对其执行操作的资源。

有关更多信息，请参阅《Amazon VPC 用户指南》**中的[使用 VPC 端点控制对服务的访问](https://docs.amazonaws.cn/vpc/latest/userguide/vpc-endpoints-access.html)。

**示例：用于 Amazon IoT TwinMaker 操作的 VPC 终端节点策略**  
以下是的终端节点策略示例 Amazon IoT TwinMaker。当关联到终端节点时，此策略授予 Amazon 账户中的 IAM 用户`iottwinmakeradmin``123456789012`对所有资源进行列出的 Amazon IoT TwinMaker 操作的访问权限。

```
{
   "Statement":[ 
      {
        "Principal": {
            "AWS": "arn:aws:iam::123456789012:user/role"
                },
         "Resource": "*",
         "Effect":"Allow",
         "Action":[
            "iottwinmaker:CreateEntity",
            "iottwinmaker:GetScene",
            "iottwinmaker:ListEntities"
         ]
        }
    ]
}
```