为设置 Amazon 区域 Amazon SDK for .NET - Amazon SDK for .NET (V4)
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

的版本 4 (V4) Amazon SDK for .NET 已经发布!

有关重大更改和迁移应用程序的信息,请参阅迁移主题

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

为设置 Amazon 区域 Amazon SDK for .NET

Amazon 区域允许您访问实际位于特定地理区域的 Amazon 服务。它可用于保证冗余,并保证您的数据和应用程序接近您和用户访问它们的位置。

要查看每项 Amazon 服务支持的所有区域和终端节点的当前列表,请参阅中的服务终端节点和配额Amazon Web Services 一般参考。要查看现有区域端点的列表,请参阅 Amazon 服务终端节点。要查看有关区域的详细信息,请参阅指定您的账户可以使用哪些 Amazon 区域

您可以创建转到特定区域的 Amazon 服务客户端。您还可以为应用程序配置一个将用于所有 Amazon 服务客户端的区域。接下来将解释这两种情况。

创建具有特定区域的服务客户端

您可以为应用程序中的任何 Amazon 服务客户端指定区域。以此方式设置区域优先于该特定服务客户端的任何全局设置。

现有区域

此示例向您展示如何在现有区域中实例化 A mazon EC2 客户端。它使用已定义的RegionEndpoint字段。

using (AmazonEC2Client ec2Client = new AmazonEC2Client(RegionEndpoint.USWest2)) { // Make a request to EC2 in the us-west-2 Region using ec2Client }

使用 RegionEndpoint 类创建新区域

此示例向您展示如何使用构造新的区域终端节点RegionEndpoint。 GetBySystemName

var newRegion = RegionEndpoint.GetBySystemName("us-west-new"); using (var ec2Client = new AmazonEC2Client(newRegion)) { // Make a request to EC2 in the new Region using ec2Client }

使用服务客户端配置类的新区域

此示例向您展示如何使用服务客户端配置类的ServiceURL属性来指定区域;在本例中为使用 Amazon EC2 Config 类。

即使区域端点未遵循正规区域端点模式,此技术仍适用。

var ec2ClientConfig = new AmazonEC2Config { // Specify the endpoint explicitly ServiceURL = "https://ec2.us-west-new.amazonaws.com" }; using (var ec2Client = new AmazonEC2Client(ec2ClientConfig)) { // Make a request to EC2 in the new Region using ec2Client }

为所有服务客户端指定区域

您可以通过多种方式为应用程序创建的所有 Amazon 服务客户端指定区域。此区域用于不是通过特定区域创建的服务客户端。

按以下顺序查 Amazon SDK for .NET 找 “区域” 值。

配置文件

在您的应用程序或软件开发工具包已加载的配置文件中进行设置。有关更多信息,请参阅 凭证和配置文件解析

环境变量

AWS_REGION 环境变量中设置。

在 Linux 或 macOS 上:

export AWS_REGION='us-west-2'

在 Windows 上:

set AWS_REGION=us-west-2
注意

如果你为整个系统设置这个环境变量(使用exportsetx),它会影响所有 SDKs 和工具包,而不仅仅是 Amazon SDK for .NET。

AWSConfigs 班级

设为 AWSConfigs. AWSRegion财产。

AWSConfigs.AWSRegion = "us-west-2"; using (var ec2Client = new AmazonEC2Client()) { // Make request to Amazon EC2 in us-west-2 Region using ec2Client }

区域解析

如果没有使用上述方法来指定 Amazon Web Services 区域,则会 Amazon SDK for .NET 尝试查找 Amazon 服务客户端要运行的区域。

区域解析顺序
  1. 应用程序配置文件,例如 app.configweb.config

  2. 环境变量(AWS_REGIONAWS_DEFAULT_REGION)。

  3. 名称由 AWSConfigs.AWSProfileName 中的值指定的配置文件。

  4. 名称由 AWS_PROFILE 环境变量指定的配置文件。

  5. [default] 配置文件。

  6. Amazon EC2 实例元数据(如果在 EC2 实例上运行)。

如果未找到区域,SDK 会抛出异常,指出 Amazon 服务客户端没有配置区域。

有关中国(北京)区域的特殊信息

要使用中国 (北京) 区域中的服务,您必须拥有特定于中国 (北京) 区域的账户和凭证。其他 Amazon 地区的账户和证书不适用于中国(北京)区域。同样,中国(北京)地区的账户和证书不适用于 Amazon 其他地区。有关可在中国(北京)区域使用的端点和协议的信息,请参阅中国(北京)区域端点

有关新 Amazon 服务的特殊信息

新 Amazon 服务最初可以在几个地区推出,然后在其他地区提供支持。在这些情况下,您无需安装最新的软件开发工具包来访问该服务的新区域。您可以按各个客户端或者按全球来指定新添加的区域,如之前所示。