Configurazione delle notifiche Vault in Amazon Glacier utilizzando AWS SDK per .NET - Amazon Glacier

Questa pagina è riservata ai clienti esistenti del servizio Amazon 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 Amazon 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 di Amazon Glacier.

Amazon Glacier (servizio autonomo originale basato su vault) non accetterà più nuovi clienti a partire dal 15 dicembre 2025, senza alcun impatto sui clienti esistenti. Amazon Glacier è un servizio APIs autonomo che archivia i dati in vault ed è distinto dalle classi di storage Amazon S3 e Amazon S3 Glacier. I dati esistenti rimarranno sicuri e accessibili in Amazon Glacier a tempo indeterminato. Non è richiesta alcuna migrazione. Per uno storage di archiviazione a lungo termine a basso costo, AWS consiglia le classi di storage Amazon S3 Glacier, che offrono un'esperienza cliente superiore con disponibilità Regione AWS completa, costi inferiori e integrazione dei servizi APIs basata su bucket S3. AWS Se desideri funzionalità avanzate, prendi in considerazione la migrazione alle classi di storage Amazon S3 Glacier utilizzando la AWS nostra Solutions Guidance per il trasferimento di dati dai vault Amazon Glacier alle classi di storage Amazon S3 Glacier.

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

Configurazione delle notifiche Vault in Amazon Glacier utilizzando AWS SDK per .NET

Di seguito è riportata la procedura per configurare le notifiche per una vault utilizzando l'API di basso livello del kit AWS SDK per .NET.

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

    È necessario specificare una regione in cui risiede il vault AWS . Tutte le operazioni eseguite utilizzando questo client si applicano a quella AWS regione.

  2. Fornisci informazioni sulla configurazione delle notifiche creando un'istanza della classe SetVaultNotificationsRequest.

    Devi fornire il nome della vault, informazioni sulla configurazione delle notifiche e l'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 per .NET con Amazon Glacier.

    Quando specifichi una configurazione delle notifiche, fornisci il nome della risorsa Amazon (ARN) di un argomento di Amazon SNS esistente e uno o più eventi per i quali desideri ricevere una notifica. Per un elenco degli eventi supportati, consulta Set Vault Notification Configuration (PUT notification-configuration).

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

  4. Dopo l'impostazione della configurazione delle notifiche per un vault, puoi recuperare le informazioni sulla configurazione chiamando il metodo GetVaultNotifications e rimuoverle chiamando il metodo DeleteVaultNotifications fornito dal client.

Esempio: impostazione della configurazione delle notifiche su un vault utilizzando il AWS SDK per .NET

L'esempio di codice C# seguente illustra la procedura precedente. Questo esempio imposta la configurazione delle notifiche per la vault ("examplevault") nella regione Stati Uniti occidentali (Oregon), recupera la configurazione e quindi la elimina. La configurazione richiede ad Amazon Glacier (Amazon Glacier) di inviare una notifica all'argomento Amazon SNS specificato quando si verifica l'evento o l'evento. ArchiveRetrievalCompleted InventoryRetrievalCompleted

Nota

Per informazioni sull'API REST sottostante, consulta Operazioni di vault.

Per step-by-step istruzioni su come eseguire il seguente esempio, consulta. Esecuzione di esempi di codice Devi aggiornare il codice e fornire un nome di vault esistente e un argomento di Amazon SNS come indicato.

using System; using System.Collections.Generic; using Amazon.Glacier; using Amazon.Glacier.Model; using Amazon.Runtime; namespace glacier.amazon.com.rproxy.govskope.ca.docsamples { class VaultNotificationSetGetDelete { static string vaultName = "examplevault"; static string snsTopicARN = "*** Provide Amazon SNS topic ARN ***"; static IAmazonGlacier client; public static void Main(string[] args) { try { using (client = new AmazonGlacierClient(Amazon.RegionEndpoint.USWest2)) { Console.WriteLine("Adding notification configuration to the vault."); SetVaultNotificationConfig(); GetVaultNotificationConfig(); Console.WriteLine("To delete vault notification configuration, press Enter"); Console.ReadKey(); DeleteVaultNotificationConfig(); } } 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 SetVaultNotificationConfig() { SetVaultNotificationsRequest request = new SetVaultNotificationsRequest() { VaultName = vaultName, VaultNotificationConfig = new VaultNotificationConfig() { Events = new List<string>() { "ArchiveRetrievalCompleted", "InventoryRetrievalCompleted" }, SNSTopic = snsTopicARN } }; SetVaultNotificationsResponse response = client.SetVaultNotifications(request); } static void GetVaultNotificationConfig() { GetVaultNotificationsRequest request = new GetVaultNotificationsRequest() { VaultName = vaultName, AccountId = "-" }; GetVaultNotificationsResponse response = client.GetVaultNotifications(request); Console.WriteLine("SNS Topic ARN: {0}", response.VaultNotificationConfig.SNSTopic); foreach (string s in response.VaultNotificationConfig.Events) Console.WriteLine("Event : {0}", s); } static void DeleteVaultNotificationConfig() { DeleteVaultNotificationsRequest request = new DeleteVaultNotificationsRequest() { VaultName = vaultName }; DeleteVaultNotificationsResponse response = client.DeleteVaultNotifications(request); } } }