

のバージョン 4 (V4) AWS SDK for .NET がリリースされました。

重要な変更とアプリケーションの移行については、[「移行トピック](https://docs.aws.amazon.com/sdk-for-net/v4/developer-guide/net-dg-v4.html)」を参照してください。

 [https://docs.aws.amazon.com/sdk-for-net/v4/developer-guide/net-dg-v4.html](https://docs.aws.amazon.com/sdk-for-net/v4/developer-guide/net-dg-v4.html)

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# の AWS リージョンの設定 AWS SDK for .NET
<a name="net-dg-region-selection"></a>

AWS リージョンを使用すると、特定の地理的リージョンに物理的に存在する AWS サービスにアクセスできます。これは、冗長性と、ユーザーがアクセスする場所の近くでのデータとアプリケーションの実行を維持するために有効です。

各 AWS サービスでサポートされているすべてのリージョンとエンドポイントの現在のリストを表示するには、の[「サービスエンドポイントとクォータ](https://docs.aws.amazon.com/general/latest/gr/aws-service-information.html)」を参照してください*AWS 全般のリファレンス*。既存のリージョンエンドポイントのリストを表示するには、[AWS サービスエンドポイント](https://docs.aws.amazon.com/general/latest/gr/rande.html)を参照してください。リージョンの詳細については、「[アカウントで使用できる AWS リージョンを指定する](https://docs.aws.amazon.com/accounts/latest/reference/manage-acct-regions.html)」を参照してください。

[特定のリージョン](#per-client)に移動する AWS サービスクライアントを作成できます。[すべての AWS サービスクライアント](#globally)に使用されるリージョンでアプリケーションを設定することもできます。次に、この 2 つのケースについて説明します。

## 特定のリージョンを使用してサービスクライアントを作成する
<a name="per-client"></a>

アプリケーション内の任意の AWS サービスクライアントのリージョンを指定できます。この方法でのリージョンの設定は、特定のサービスクライアントのグローバル設定よりも優先されます。

### 既存のリージョン
<a name="w2aac11c19c11b5"></a>

この例では、既存のリージョンで [Amazon EC2 クライアント](https://docs.aws.amazon.com/sdkfornet/v4/apidocs/items/EC2/TEC2Client.html)をインスタンス化する方法を示します。ここでは、定義済み [RegionEndpoint](https://docs.aws.amazon.com/sdkfornet/v4/apidocs/items/Amazon/TRegionEndpoint.html) フィールドを使用します。

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

### RegionEndpoint クラスを使用した新しいリージョン
<a name="w2aac11c19c11b7"></a>

この例では、[RegionEndpoint.GetBySystemName](https://docs.aws.amazon.com/sdkfornet/v4/apidocs/items/Amazon/MRegionEndpointGetBySystemNameString.html) を使用して新しいリージョンエンドポイントを作成する方法を示しています。

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

### サービスクライアント設定クラスを使用した新しいリージョン
<a name="w2aac11c19c11b9"></a>

この例では、サービスクライアント設定クラスの `ServiceURL` プロパティを使用してリージョンを指定する方法を示しています (この例では、[Amazonec2Config](https://docs.aws.amazon.com/sdkfornet/v4/apidocs/items/EC2/TEC2Config.html) クラスを使用)。

この手法は、エンドポイントリージョンが通常のエンドポイントパターンに従っていない場合でも有効です。

```
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
}
```

## すべてのサービスクライアント用にリージョンを指定する
<a name="globally"></a>

アプリケーションが作成するすべての AWS サービスクライアントにリージョンを指定する方法はいくつかあります。このリージョンは、特定のリージョンを使用して作成されていないサービスクライアントに使用されます。

は、次の順序でリージョン値 AWS SDK for .NET を検索します。

### プロファイル
<a name="w2aac11c19c15b7"></a>

アプリケーションまたは SDK によってロードされたプロファイルを設定します。詳細については、「[認証情報とプロファイルの解決](creds-assign.md)」を参照してください。

### 環境変数
<a name="w2aac11c19c15b9"></a>

以下のように `AWS_REGION` 環境変数を設定します。

Linux または macOS の場合:

```
export AWS_REGION='us-west-2'
```

Windows の場合:

```
set AWS_REGION=us-west-2
```

**注記**  
この環境変数をシステム全体に設定すると (`export` または `setx` を使用)、 AWS SDK for .NETだけではなく、すべての SDK とツールキットが影響を受けます。

### AWSConfigs クラス
<a name="w2aac11c19c15c11"></a>

以下のように [AWSConfigs.AWSRegion](https://docs.aws.amazon.com/sdkfornet/v4/apidocs/items/Amazon/TAWSConfigs.html) プロパティとして設定します。

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

## リージョン解像度
<a name="net-dg-region-resolution"></a>

上記のいずれの方法も の指定に使用されない場合 AWS リージョン、 は AWS サービスクライアントが動作するリージョンの検索 AWS SDK for .NET を試みます。

**リージョン解像度オーダー**

1. `app.config`や`web.config`などのアプリケーション設定ファイル。

1. 環境変数（`AWS_REGION`および`AWS_DEFAULT_REGION`） 

1. `AWSConfigs.AWSProfileName` の値で指定された名前のプロファイル。

1. `AWS_PROFILE` 環境変数で指定された名前を持つプロファイル。

1. `[default]` のプロファイル。

1. Amazon EC2 インスタンスのメタデータ (EC2 インスタンスで実行されている場合)。

リージョンが見つからない場合、SDK は AWS サービスクライアントにリージョンが設定されていないことを示す例外をスローします。

## 中国 (北京) リージョンに関する特別な情報
<a name="net-dg-region-cn-north-1"></a>

中国 (北京) リージョンでサービスを使用するには、中国 (北京) リージョン固有のアカウントと認証情報が必要です。他の AWS リージョンのアカウントと認証情報は、中国 (北京) リージョンでは機能しません。同様に、中国 (北京) リージョンのアカウントと認証情報は、他の AWS リージョンでは機能しません。中国 (北京) リージョンで利用可能なエンドポイントとプロトコルの詳細については、「[北京リージョンのエンドポイント](https://docs.amazonaws.cn/en_us/aws/latest/userguide/endpoints-Beijing.html)」を参照してください。

## 新しい AWS サービスに関する特別な情報
<a name="net-dg-region-new-services"></a>

新しい AWS サービスは、最初にいくつかのリージョンで起動し、その後他のリージョンでサポートされます。このような場合、そのサービス用の新しいリージョンにアクセスするために最新の SDK をインストールする必要はありません。新しく追加されたリージョンは、前述したように、クライアントごと、またはグローバルに指定できます。