

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

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

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

*如果您为终端节点启用私有 DNS*，则可以通过以下 VPC 终端节点之一向 AWS IoT SiteWise 发出 API 请求。
+ 对于**数据层面** API 操作，请使用以下端点：{{region}}替换为你的 AWS 区域。

  ```
  data.iotsitewise.{{region}}.amazonaws.com
  ```
+ 对于**控制平面** API 操作，请使用以下端点：{{region}}替换为你的 AWS 区域。

  ```
  api.iotsitewise.{{region}}.amazonaws.com
  ```

*如果您为终端节点禁用私有 DNS*，则必须执行以下操作才能 AWS IoT SiteWise 通过终端节点进行访问：

1. 在 API 请求中指定 VPC 端点 url。
   + 对于**数据面板** API 操作，请使用以下端点 url。将{{vpc-endpoint-id}}和{{region}}替换为您的 VPC 终端节点 ID 和区域。

     ```
     {{vpc-endpoint-id}}.data.iotsitewise.{{region}}.vpce.amazonaws.com
     ```
   + 对于**控制面板** API 操作，请使用以下端点 url。将{{vpc-endpoint-id}}和{{region}}替换为您的 VPC 终端节点 ID 和区域。

     ```
     {{vpc-endpoint-id}}.api.iotsitewise.{{region}}.vpce.amazonaws.com
     ```

1. 禁用主机前缀注入功能。在 AWS CLI 调用每个 AWS SDKs API 操作时，在服务端点前面加上各种主机前缀。当您指定 VPC 终端节点 AWS IoT SiteWise 时 URLs ，此功能会导致 AWS CLI 和 AWS SDKs 生成无效的结果。
**重要**  
您无法在 AWS CLI 或中禁用主机前缀注入 AWS Tools for PowerShell。这意味着，如果您禁用私有 DNS，则无法使用这些工具 AWS IoT SiteWise 通过 VPC 终端节点进行访问。允许私有 DNS 使用 AWS CLI 或 AWS IoT SiteWise 通过终端节点 AWS Tools for PowerShell 进行访问。

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

有关更多信息，请参阅*AWS PrivateLink 指南*中的[使用接口 VPC 终端节点访问 AWS 服务](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html#access-service-though-endpoint)。