

 **Esta página destina-se somente a clientes atuais do serviço Amazon Glacier que usam cofres e a API REST original de 2012.**

Se você estiver procurando soluções de armazenamento de arquivos do Amazon Glacier, recomendamos usar as classes de armazenamento do 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 do Amazon Glacier](https://aws.amazon.com/s3/storage-classes/glacier/).

O Amazon Glacier (serviço autônomo original baseado em cofre) não está mais aceitando novos clientes. O Amazon Glacier é um serviço independente APIs que armazena dados em cofres e é diferente das classes de armazenamento Amazon S3 e Amazon S3 Glacier. Seus dados existentes permanecerão seguros e acessíveis no Amazon Glacier indefinidamente. Nenhuma migração é necessária. Para armazenamento de arquivamento de baixo custo e longo prazo, AWS recomenda as classes de armazenamento [Amazon S3 Glacier](https://aws.amazon.com/s3/storage-classes/glacier/), que oferecem uma experiência superior ao cliente com APIs base em buckets S3, disponibilidade Região da AWS total, custos mais baixos e integração de serviços. AWS Se você quiser recursos aprimorados, considere migrar para as classes de armazenamento do Amazon S3 Glacier usando nossas [Orientações de soluções da AWS para transferir dados dos cofres do Amazon Glacier para as classes de armazenamento do Amazon S3 Glacier](https://aws.amazon.com/solutions/guidance/data-transfer-from-amazon-s3-glacier-vaults-to-amazon-s3/).

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á.

# Criação de um cofre no Amazon Glacier usando o AWS SDK para .NET
<a name="creating-vaults-dotnet-sdk"></a>

Tanto o [alto quanto o baixo nível APIs](using-aws-sdk.md) fornecidos pelo Amazon SDK para .NET fornecem um método para criar um cofre.

**Topics**
+ [Criando um cofre usando a API de alto nível do AWS SDK para .NET](#create-vault-dotnet-highlevel)
+ [Criando um cofre usando a API de baixo nível do AWS SDK para .NET](#create-vault-dotnet-lowlevel)

## Criando um cofre usando a API de alto nível do AWS SDK para .NET
<a name="create-vault-dotnet-highlevel"></a>

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 do Vault usando a API de alto nível do AWS SDK para .NET
<a name="vault-operations-example-dotnet-highlevel"></a>

O exemplo de código do C\$1 a seguir cria e exclui um cofre na região oeste dos EUA (Oregon). Para obter uma lista Regiões da AWS em que você pode criar cofres, consulte. [Acessar o Amazon Glacier](amazon-glacier-accessing.md) 

Para step-by-step obter instruções sobre como executar o exemplo a seguir, consulte[Executar exemplos de código](using-aws-sdk-for-dot-net.md#setting-up-and-testing-sdk-dotnet). Você precisa atualizar o código conforme mostrado com um nome de cofre. 

**Example**  

```
using System;
using Amazon.Glacier;
using Amazon.Glacier.Transfer;
using Amazon.Runtime;

namespace glacier.amazon.com.rproxy.govskope.ca.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();
    }
  }
}
```

## Criando um cofre usando a API de baixo nível do AWS SDK para .NET
<a name="create-vault-dotnet-lowlevel"></a>

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

 

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

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

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

    O Amazon 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 para .NET com o Amazon Glacier](using-aws-sdk-for-dot-net.md). 

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

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

### Exemplo: operações do Vault usando a API de baixo nível do AWS SDK para .NET
<a name="vault-operations-example-dotnet-lowlevel"></a>

O exemplo do C\$1 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 no mesmo cofre e Região da AWS, em seguida, exclui o cofre criado. O `Location` impresso é o URI relativo do cofre que inclui o ID da sua conta Região da AWS, o e o nome do cofre.

**nota**  
Para obter informações sobre a API REST subjacente, consulte [Create Vault (PUT vault)](api-vault-put.md). 

Para step-by-step obter instruções sobre como executar o exemplo a seguir, consulte[Executar exemplos de código](using-aws-sdk-for-dot-net.md#setting-up-and-testing-sdk-dotnet). Você precisa atualizar o código conforme mostrado com um nome de cofre. 

**Example**  

```
using System;
using Amazon.Glacier;
using Amazon.Glacier.Model;
using Amazon.Runtime;

namespace glacier.amazon.com.rproxy.govskope.ca.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);
    }
  }
}
```