Creazione di un vault in Amazon S3 Glacier mediante AWS SDK for .NET - Amazon S3 Glacier

Questa pagina è riservata ai clienti esistenti del servizio S3 Glacier che utilizzano Vaults e l'API REST originale del 2012.

Se stai cercando soluzioni di archiviazione, ti consigliamo di utilizzare le classi di storage S3 Glacier in Amazon S3, S3 Glacier Instant Retrieval, S3 Glacier Flexible Retrieval e S3 Glacier Deep Archive. Per ulteriori informazioni su queste opzioni di storage, consulta le classi di storage S3 Glacier e lo storage dei dati a lungo termine con le classi di storage S3 Glacier nella Amazon S3 User Guide. Queste classi di storage utilizzano l'API Amazon S3, sono disponibili in tutte le regioni e possono essere gestite all'interno della console Amazon S3. Offrono funzionalità come Storage Cost Analysis, Storage Lens, funzionalità di sicurezza tra cui diverse opzioni di crittografia e altro ancora.

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Creazione di un vault in Amazon S3 Glacier mediante AWS SDK for .NET

Le API di alto e basso livello fornite da Amazon SDK per .NET forniscono un metodo per creare un vault.

Creazione di un vault mediante l'API di alto livello del kit AWS SDK for .NET

La classe ArchiveTransferManager dell'API di alto livello fornisce il metodo CreateVault che puoi utilizzare per creare un vault in una Regione AWS.

Esempio: operazioni di vault con l'API di alto livello del kit AWS SDK for .NET

L'esempio di codice C# seguente crea ed elimina un vault nella regione Stati Uniti occidentali (Oregon). Per l'elenco di Regioni AWS in cui è possibile creare vault, consulta Accesso ad Amazon S3 Glacier.

Per istruzioni dettagliate su come eseguire l'esempio seguente, consulta Esecuzione di esempi di codice. Devi aggiornare il codice con un nome di vault come indicato.

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(); } } }

Creazione di un vault mediante l'API di basso livello del kit AWS SDK for .NET

L'interfaccia API di basso livello fornisce metodi per tutte le operazioni di vault, come creare ed eliminare vault, ottenere la descrizione di un vault e generare un elenco dei vault creati in una determinata Regione AWS. Di seguito è riportata la procedura per creare un vault mediante il kit AWS SDK for .NET.

  1. Crea un'istanza della classe AmazonGlacierClient (client).

    Devi specificare una Regione AWS in cui intendi creare un vault. Tutte le operazioni che esegui utilizzando questo client si applicano a quella Regione AWS.

  2. Fornisci informazioni sulla richiesta creando un'istanza della classe CreateVaultRequest.

    Amazon S3 Glacier (S3 Glacier) richiede di fornire un nome di vault e il tuo ID account. Se non specifichi un ID account, viene utilizzato l'ID account associato alle credenziali che hai fornito per firmare la richiesta. Per ulteriori informazioni, consulta Utilizzo di AWS SDK for .NET con Amazon S3 Glacier.

  3. Eseguire il metodo CreateVault fornendo l'oggetto della richiesta come parametro.

    La risposta restituita da S3 Glacier è disponibile nell'oggetto CreateVaultResponse.

Esempio: operazioni di vault con l'API di basso livello del kit AWS SDK for .NET

L'esempio di codice C# seguente illustra la procedura precedente. In questo esempio viene creato un vault nella regione Stati Uniti occidentali (Oregon). Inoltre, l'esempio di codice recupera le informazioni sul vault, elenca tutti i vault nella stessa Regione AWS e quindi elimina il vault creato. La Location stampata è l'URI relativo del vault che include l'ID account, la Regione AWS e il nome del vault.

Nota

Per informazioni sulla REST API sottostante, consulta Create Vault (PUT vault).

Per istruzioni dettagliate su come eseguire l'esempio seguente, consulta Esecuzione di esempi di codice. Devi aggiornare il codice con un nome di vault come indicato.

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); } } }