Como criar um cofre no Amazon S3 Glacier usando o AWS SDK for .NET - Amazon S3 Glacier

Esta página é somente para clientes existentes do serviço S3 Glacier que usam o Vaults e a API REST original de 2012.

Se você estiver procurando por soluções de armazenamento de arquivamento, sugerimos usar as classes de armazenamento S3 Glacier no Amazon S3, S3 Glacier Instant Retrieval, S3 Glacier Flexible Retrieval e S3 Glacier Deep Archive. Para saber mais sobre essas opções de armazenamento, consulte Classes de armazenamento S3 Glacier e Armazenamento de dados de longo prazo usando classes de armazenamento S3 Glacier no Guia do usuário do Amazon S3. Essas classes de armazenamento usam a API do Amazon S3, estão disponíveis em todas as regiões e podem ser gerenciadas no console do Amazon S3. Eles oferecem recursos como análise de custos de armazenamento, lente de armazenamento, recursos de segurança, incluindo várias opções de criptografia e muito mais.

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Como criar um cofre no Amazon S3 Glacier usando o AWS SDK for .NET

As APIs de nível superior e inferior fornecidas pelo Amazon SDK for .NET oferecem um método para criar um cofre.

Como criar um cofre usando a API de nível superior do AWS SDK for .NET

A classe ArchiveTransferManager da API de nível superior fornece o método CreateVault que você pode usar para criar um cofre em uma região da AWS.

Exemplo: operações de cofre usando a API de nível superior do AWS SDK for .NET

O exemplo de código do C# a seguir cria e exclui um cofre na região oeste dos EUA (Oregon). Para obter uma lista de Regiões da AWS em que você pode criar cofres, consulte Acessar o Amazon S3 Glacier.

Para obter instruções passo a passo sobre como executar o exemplo a seguir, consulte Executar exemplos de código. Você precisa atualizar o código conforme mostrado com um nome de cofre.

using System; using Amazon.Glacier; using Amazon.Glacier.Transfer; using Amazon.Runtime; namespace glacier.amazon.com.docsamples { class VaultCreateDescribeListVaultsDeleteHighLevel { static string vaultName = "*** Provide vault name ***"; public static void Main(string[] args) { try { var manager = new ArchiveTransferManager(Amazon.RegionEndpoint.USWest2); manager.CreateVault(vaultName); Console.WriteLine("Vault created. To delete the vault, press Enter"); Console.ReadKey(); manager.DeleteVault(vaultName); Console.WriteLine("\nVault deleted. To continue, press Enter"); Console.ReadKey(); } catch (AmazonGlacierException e) { Console.WriteLine(e.Message); } catch (AmazonServiceException e) { Console.WriteLine(e.Message); } catch (Exception e) { Console.WriteLine(e.Message); } Console.WriteLine("To continue, press Enter"); Console.ReadKey(); } } }

Como criar um cofre usando a API de nível inferior do AWS SDK for .NET

A API de nível inferior fornece métodos para todas as operações de cofre, incluindo criar e excluir cofres, obter uma descrição de cofre e uma lista de cofres criados em uma específica Região da AWS. Estas são as etapas para criar um cofre usando o console do AWS SDK for .NET.

  1. Crie uma instância da classe AmazonGlacierClient (o cliente).

    Você precisa especificar uma região Região da AWS na qual deseja criar um cofre. Todas as operações realizadas por você usando esse cliente se aplicam a essa Região da AWS.

  2. Forneça informações sobre a solicitação criando uma instância da classe CreateVaultRequest.

    O Amazon S3 Glacier (S3 Glacier) exige que você forneça um nome de cofre e o ID da conta. Se você não fornecer um ID da conta, o ID da conta associado às credenciais fornecidas por você para assinar a solicitação será pressuposto. Para obter mais informações, consulte Como usar o AWS SDK for .NET com o Amazon S3 Glacier .

  3. Execute o método CreateVault fornecendo o objeto de solicitação como um parâmetro.

    A resposta que o S3 Glacier retorna está disponível no objeto CreateVaultResponse.

Exemplo: operações de cofre usando a API de nível inferior do AWS SDK for .NET

O exemplo do C# a seguir ilustra as etapas anteriores. O exemplo cria um cofre na região Oeste dos EUA (Oregon). Além disso, o exemplo de código recupera as informações do cofre, lista todos os cofres na mesma Região da AWS e exclui o cofre criado. O Location impresso é o URI relativo do cofre que inclui o ID da conta, a Região da AWS e o nome do cofre.

nota

Para obter informações sobre a API REST subjacente, consulte Create Vault (PUT vault).

Para obter instruções passo a passo sobre como executar o exemplo a seguir, consulte Executar exemplos de código. Você precisa atualizar o código conforme mostrado com um nome de cofre.

using System; using Amazon.Glacier; using Amazon.Glacier.Model; using Amazon.Runtime; namespace glacier.amazon.com.docsamples { class VaultCreateDescribeListVaultsDelete { static string vaultName = "*** Provide vault name ***"; static AmazonGlacierClient client; public static void Main(string[] args) { try { using (client = new AmazonGlacierClient(Amazon.RegionEndpoint.USWest2)) { Console.WriteLine("Creating a vault."); CreateAVault(); DescribeVault(); GetVaultsList(); Console.WriteLine("\nVault created. Now press Enter to delete the vault..."); Console.ReadKey(); DeleteVault(); } } catch (AmazonGlacierException e) { Console.WriteLine(e.Message); } catch (AmazonServiceException e) { Console.WriteLine(e.Message); } catch (Exception e) { Console.WriteLine(e.Message); } Console.WriteLine("To continue, press Enter"); Console.ReadKey(); } static void CreateAVault() { CreateVaultRequest request = new CreateVaultRequest() { VaultName = vaultName }; CreateVaultResponse response = client.CreateVault(request); Console.WriteLine("Vault created: {0}\n", response.Location); } static void DescribeVault() { DescribeVaultRequest describeVaultRequest = new DescribeVaultRequest() { VaultName = vaultName }; DescribeVaultResponse describeVaultResponse = client.DescribeVault(describeVaultRequest); Console.WriteLine("\nVault description..."); Console.WriteLine( "\nVaultName: " + describeVaultResponse.VaultName + "\nVaultARN: " + describeVaultResponse.VaultARN + "\nVaultCreationDate: " + describeVaultResponse.CreationDate + "\nNumberOfArchives: " + describeVaultResponse.NumberOfArchives + "\nSizeInBytes: " + describeVaultResponse.SizeInBytes + "\nLastInventoryDate: " + describeVaultResponse.LastInventoryDate ); } static void GetVaultsList() { string lastMarker = null; Console.WriteLine("\n List of vaults in your account in the specific region ..."); do { ListVaultsRequest request = new ListVaultsRequest() { Marker = lastMarker }; ListVaultsResponse response = client.ListVaults(request); foreach (DescribeVaultOutput output in response.VaultList) { Console.WriteLine("Vault Name: {0} \tCreation Date: {1} \t #of archives: {2}", output.VaultName, output.CreationDate, output.NumberOfArchives); } lastMarker = response.Marker; } while (lastMarker != null); } static void DeleteVault() { DeleteVaultRequest request = new DeleteVaultRequest() { VaultName = vaultName }; DeleteVaultResponse response = client.DeleteVault(request); } } }