このページは、Vaults と 2012 年の元の REST API を使用する Amazon Glacier サービスの既存のお客様専用です。
アーカイブストレージソリューションをお探しの場合は、Amazon Glacier Amazon S3、S3 Glacier Flexible Retrieval、S3 S3 Glacier Deep Archive の Amazon Glacier ストレージクラスを使用することをお勧めします。これらのストレージオプションの詳細については、Amazon Glacier ストレージクラス
Amazon Glacier (元のスタンドアロンボールトベースのサービス) は、2025 年 12 月 15 日以降、既存の顧客に影響を与えずに新規顧客を受け入れなくなります。Amazon Glacier は、ボールトにデータを保存する独自の APIs を備えたスタンドアロンサービスであり、Amazon S3 および Amazon S3 Glacier ストレージクラスとは異なります。既存のデータは Amazon Glacier で無期限に安全でアクセス可能です。移行は必要ありません。低コストの長期アーカイブストレージの場合、 は Amazon S3 Glacier ストレージクラス
翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon Glacier AWS SDK for .NET での の使用
AWS SDK for .NET API は で使用できますAWSSDK.dll。のダウンロードについては AWS SDK for .NET、「サンプルコードライブラリ
注記
低レベル API と高レベル API は、Amazon Glacier にアクセスするためのスレッドセーフなクライアントを提供します。最善の方法としては、ご利用のアプリケーションでクライアントを 1 つ作成し、そのクライアントをスレッド間で再利用することです。
低レベル API の使用
低レベルAmazonGlacierClientクラスは、Amazon Glacier (Amazon Glacier) () の基盤となる REST オペレーションにマッピングされるすべてのメソッドを提供しますAmazon Glacier の API リファレンス。これらのメソッドのいずれかを呼び出すときは、対応するリクエストオブジェクトを作成し、メソッドが Amazon Glacier レスポンスを オペレーションに返すことができるレスポンスオブジェクトを指定する必要があります。
たとえば、AmazonGlacierClient クラスには、ボールト作成のための CreateVault メソッドがあります。このメソッドは、ボールトの作成 REST オペレーションに対応するものです (「ボールトの作成 (PUT vault)」を参照してください)。この方法を使用するには、次の C# コードスニペットに示すように、 CreateVaultRequestおよび CreateVaultResponseクラスのインスタンスを作成してリクエスト情報を提供し、Amazon Glacier レスポンスを受信する必要があります。
AmazonGlacierClient client; client = new AmazonGlacierClient(Amazon.RegionEndpoint.USEast1); CreateVaultRequest request = new CreateVaultRequest() { AccountId = "-", VaultName = "*** Provide vault name ***" }; CreateVaultResponse response = client.CreateVault(request);
このガイドの低レベル API の例では、すべてこのパターンを使用しています。
注記
ここに挙げたコードスニペットでは、リクエストの作成時に AccountId を指定しています。ただし、 を使用する場合 AWS SDK for .NET、リクエストAccountIdの はオプションであるため、このガイドのすべての低レベルの例ではこの値を設定しません。AccountId は AWS アカウント ID です。この値は、リクエストの署名に使用される認証情報に関連付けられた AWS アカウント ID と一致する必要があります。 AWS アカウント ID またはオプションで「-」を指定できます。この場合、Amazon Glacier はリクエストの署名に使用される認証情報に関連付けられた AWS アカウント ID を使用します。お客様のアカウント ID を指定する場合は、ハイフンを含めないでください。を使用する場合 AWS SDK for .NET、アカウント ID を指定しない場合、ライブラリはアカウント ID を「-」に設定します。
高レベル API の使用
アプリケーション開発をさらに簡素化するために、 AWS SDK for .NET には、低レベル API の一部のメソッドに対して高レベルの抽象化を実装する ArchiveTransferManager クラスが用意されています。このクラスには、Upload、Download など、アーカイブオペレーションのための便利なメソッドがあります。
たとえば、以下の C# コードスニペットでは、アーカイブのアップロードに Upload 高レベルメソッドを使用しています。
string vaultName = "examplevault"; string archiveToUpload = "c:\folder\exampleArchive.zip"; var manager = new ArchiveTransferManager(Amazon.RegionEndpoint.USEast1); string archiveId = manager.Upload(vaultName, "archive description", archiveToUpload).ArchiveId;
実行するオペレーションは、ArchiveTransferManagerオブジェクトの作成時に指定した AWS リージョンに適用されることに注意してください。このガイドの高レベル API の例では、すべてこのパターンを使用しています。
注記
高レベルの ArchiveTransferManager クラスには、依然として低レベルの AmazonGlacierClient クライアントが必要です。このクライアントは、明示的に渡すことや、ArchiveTransferManager で作成することができます。
コード例の実行
.NET コード例の使用を最も手早く開始する方法は、 AWS SDK for .NETをインストールすることです。詳細については、「Amazon SDK for .NET」
以下の手順では、このガイドに示しているコード例をテストするためのステップを示しています。
1 |
Amazon SDK for .NET トピック「認証情報の設定」の説明に従って、 AWS 認証情報の認証情報プロファイルを作成します。 AWS |
2 |
AWS 空の プロジェクト テンプレートを使用して、新しい Visual Studio プロジェクトを作成します。 |
3 |
プロジェクトファイル |
4 |
コードを実行します。 AWS マネジメントコンソールを使用して、オブジェクトが作成されることを確認します。詳細については AWS マネジメントコンソール、http://aws.amazon.com/console/ |
エンドポイントの設定
デフォルトでは、 はエンドポイントを米国西部 (オレゴン) リージョン () AWS SDK for .NET に設定しますhttps://glacier.us-west-2.amazonaws.com。次の C# スニペットに示すように、エンドポイントを他の AWS リージョンに設定できます。
以下のスニペットには、低レベル API で 米国西部(オレゴン リージョン (us-west-2) にエンドポイントを設定する方法を示しています。
AmazonGlacierClient client = new AmazonGlacierClient(Amazon.RegionEndpoint.USWest2);
以下のスニペットには、高レベル API で 米国西部(オレゴン) リージョンにエンドポイントを設定する方法を示しています。
var manager = new ArchiveTransferManager(Amazon.RegionEndpoint.USWest2);
サポートされている AWS リージョンとエンドポイントの現在のリストについては、「」を参照してくださいAmazon Glacier へのアクセス。