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à.
Un argomento Amazon SNS è un punto di accesso logico che funge da canale di comunicazione. Un argomento consente di raggruppare più endpoint (ad esempio Amazon SQS AWS Lambda, HTTP/S o un indirizzo e-mail).
Per trasmettere i messaggi di un sistema producer (ad esempio un sito Web di E-Commerce) e che opera con più servizi diversi dai quali tali messaggi sono richiesti (ad esempio i sistemi di pagamento ed evasione degli ordini), puoi creare un argomento per il sistema producer.
La prima attività di Amazon SNS, nonché la più comune, è la creazione di un argomento. Questa pagina mostra come utilizzare il AWS Management Console, il e il AWS SDK per Java AWS SDK per .NET per creare un argomento.
Durante la creazione, è possibile scegliere un tipo di argomento (standard o FIFO) e assegnare un nome all'argomento. Una volta creato un argomento, non è possibile modificare il tipo o il nome dell'argomento. Tutte le altre opzioni di configurazione sono facoltative durante la creazione dell'argomento ed è possibile modificarle in un secondo momento.
Importante
Non aggiungere informazioni personali di identificazione (PII) o altre informazioni riservate o sensibili nei nomi dei argomenti. I nomi degli argomenti sono accessibili ad altri Amazon Web Services, inclusi CloudWatch i log. I nomi dei argomenti non sono destinati ad essere utilizzati per dati privati o sensibili.
Per creare un argomento utilizzando il AWS Management Console
La creazione di un argomento in Amazon SNS pone le basi per la distribuzione dei messaggi, consentendoti di pubblicare messaggi che possono essere distribuiti a più abbonati. Questo passaggio è essenziale per configurare il tipo, le impostazioni di crittografia e le politiche di accesso dell'argomento, in modo da garantire che l'argomento soddisfi i requisiti di sicurezza, conformità e operativi dell'organizzazione.
Accedi alla console Amazon SNS
. -
Esegui una di queste operazioni:
-
Se non è mai stato creato alcun argomento in Account AWS precedenza, leggi la descrizione di Amazon SNS nella home page.
-
Se gli argomenti sono già stati creati sotto il tuo Account AWS nome, nel pannello di navigazione, scegli Argomenti.
-
-
Nella pagina Topics (Argomenti), seleziona Create new topic (Crea nuovo argomento).
-
Nella pagina Create topic (Crea argomento), nella sezione Details (Dettagli), eseguire queste operazioni:
-
Per Type (Tipo), scegli un tipo di argomento (standard o FIFO).
-
Immetti un nome per l'argomento. Per un Argomento FIFO, aggiungere .fifo alla fine del nome.
-
(Facoltativo) Compilare il Display name (Nome visualizzato) per l'argomento.
Importante
Quando si effettua la sottoscrizione di un endpoint e-mail, il numero combinato di caratteri del nome dell'argomento Amazon SNS mostrato e dell'indirizzo e-mail da cui viene eseguito l'invio (ad esempio, no-reply@sns.amazonaws.com) non deve essere superiore a 320 caratteri UTF-8. È possibile utilizzare uno strumento di codifica di terze parti per verificare la lunghezza dell'indirizzo da cui eseguire l'invio prima di configurare un nome da mostrare per l'argomento Amazon SNS.
-
(Facoltativo) Per un argomento FIFO, puoi scegliere Deduplicazione dei messaggi basata sul contenuto per abilitare la deduplicazione predefinita dei messaggi. Per ulteriori informazioni, consulta Deduplicazione dei messaggi Amazon SNS per argomenti FIFO.
-
-
(Facoltativo) Espandere la sezione Encryption (Crittografia) e procedere come segue. Per ulteriori informazioni, consulta Protezione dei dati di Amazon SNS con crittografia lato server.
-
Scegliere Enable encryption (Abilita crittografia).
-
Specificate la AWS KMS chiave. Per ulteriori informazioni, consulta Termini chiave.
Per ciascun tipo di KMS vengono visualizzati i valori Description (Descrizione), Account e KMS ARN (ARN KMS).
Importante
Se non sei il proprietario della KMS, oppure se effettui l'accesso con un account che non dispone delle autorizzazioni
kms:ListAliases
ekms:DescribeKey
, non puoi visualizzare le informazioni sulla KMS sulla console Amazon SNS.Chiedi al proprietario della KMS di concederti queste autorizzazioni. Per esempi e ulteriori informazioni consulta AWS KMS Autorizzazioni API: e Documentazione su operazioni e risorse nella AWS Key Management Service Guida per sviluppatori.
-
Il KMS AWS gestito per Amazon SNS (predefinitoalias/aws/sns) è selezionato per impostazione predefinita.
Nota
Ricorda quanto segue:
-
La prima volta che usi AWS Management Console per specificare il KMS AWS gestito per Amazon SNS per un argomento AWS KMS , crea AWS il KMS gestito per Amazon SNS.
-
In alternativa, la prima volta che utilizzi l'
Publish
azione su un argomento con SSE abilitato, AWS KMS crea il KMS AWS gestito per Amazon SNS.
-
-
Per utilizzare un KMS personalizzato dal tuo AWS account, scegli il campo della chiave KMS, quindi scegli il KMS personalizzato dall'elenco.
Nota
Per istruzioni sulla creazione di chiavi personalizzate KMSs, consulta Creating Keys nella Developer Guide AWS Key Management Service
-
Per utilizzare un ARN KMS personalizzato dal AWS tuo account o da AWS un altro account, inseriscilo nel campo della chiave KMS.
-
-
-
(Facoltativo) Per impostazione predefinita, solo il proprietario dell'argomento può pubblicare o sottoscrivere l'argomento. Per configurare autorizzazioni di accesso aggiuntive, espandi la sezione Access policy (Policy di accesso) . Per ulteriori informazioni, consulta Identity and Access Management in Amazon SNS e Esempi di casi per il controllo degli accessi Amazon SNS.
Nota
Quando crei un argomento utilizzando la console, la policy predefinita utilizza la chiave di condizione
aws:SourceOwner
. Questa chiave è analoga aaws:SourceAccount
. -
(Facoltativo) Per configurare il modo in cui Amazon SNS riprova a consegnare i messaggi non recapitati, espandere la sezione Delivery retry policy (HTTP/S) (Policy nuovi tentativi di consegna [HTTP/S]). Per ulteriori informazioni, consulta Tentativi di consegna dei messaggi di Amazon SNS.
-
(Facoltativo) Per configurare il modo in cui Amazon SNS registra la consegna dei messaggi CloudWatch, espandi la sezione Registrazione dello stato di consegna. Per ulteriori informazioni, consulta Stato di consegna dei messaggi Amazon SNS.
-
(facoltativo) Per aggiungere tag di metadati all'argomento, espandere la sezione Tags (Tag), immettere una Key (Chiave) e un Value (Valore) (opzionale) e scegliere Add tag (Aggiungi tag). Per ulteriori informazioni, consulta Assegnazione di tag all'argomento Amazon SNS.
-
Scegliere Create topic (Crea argomento).
L'argomento viene creato e la
MyTopic
pagina viene visualizzata.Il nome dell'argomento, l'ARN, (opzionale) il nome visualizzato e l'ID AWS account del proprietario dell'argomento vengono visualizzati nella sezione Dettagli.
-
Copiare l'ARN dell'argomento negli appunti, ad esempio:
arn:aws:sns:us-east-2:123456789012:MyTopic
Per creare un argomento utilizzando un SDK AWS
Per utilizzare un AWS SDK, devi configurarlo con le tue credenziali. Per ulteriori informazioni, consulta I file di configurazione e credenziali condivisi nella and Tools Reference AWS SDKs Guide.
Gli esempi di codice seguenti mostrano come utilizzare CreateTopic
.
- SDK per .NET
-
Nota
C'è di più su. GitHub Trova l'esempio completo e scopri di più sulla configurazione e l'esecuzione nel Repository di esempi di codice AWS
. Crea un argomento con un nome di specifico.
using System; using System.Threading.Tasks; using Amazon.SimpleNotificationService; using Amazon.SimpleNotificationService.Model; /// <summary> /// This example shows how to use Amazon Simple Notification Service /// (Amazon SNS) to add a new Amazon SNS topic. /// </summary> public class CreateSNSTopic { public static async Task Main() { string topicName = "ExampleSNSTopic"; IAmazonSimpleNotificationService client = new AmazonSimpleNotificationServiceClient(); var topicArn = await CreateSNSTopicAsync(client, topicName); Console.WriteLine($"New topic ARN: {topicArn}"); } /// <summary> /// Creates a new SNS topic using the supplied topic name. /// </summary> /// <param name="client">The initialized SNS client object used to /// create the new topic.</param> /// <param name="topicName">A string representing the topic name.</param> /// <returns>The Amazon Resource Name (ARN) of the created topic.</returns> public static async Task<string> CreateSNSTopicAsync(IAmazonSimpleNotificationService client, string topicName) { var request = new CreateTopicRequest { Name = topicName, }; var response = await client.CreateTopicAsync(request); return response.TopicArn; } }
Crea un nuovo argomento con un nome e attributi FIFO e di deduplicazione specifici.
/// <summary> /// Create a new topic with a name and specific FIFO and de-duplication attributes. /// </summary> /// <param name="topicName">The name for the topic.</param> /// <param name="useFifoTopic">True to use a FIFO topic.</param> /// <param name="useContentBasedDeduplication">True to use content-based de-duplication.</param> /// <returns>The ARN of the new topic.</returns> public async Task<string> CreateTopicWithName(string topicName, bool useFifoTopic, bool useContentBasedDeduplication) { var createTopicRequest = new CreateTopicRequest() { Name = topicName, }; if (useFifoTopic) { // Update the name if it is not correct for a FIFO topic. if (!topicName.EndsWith(".fifo")) { createTopicRequest.Name = topicName + ".fifo"; } // Add the attributes from the method parameters. createTopicRequest.Attributes = new Dictionary<string, string> { { "FifoTopic", "true" } }; if (useContentBasedDeduplication) { createTopicRequest.Attributes.Add("ContentBasedDeduplication", "true"); } } var createResponse = await _amazonSNSClient.CreateTopicAsync(createTopicRequest); return createResponse.TopicArn; }
-
Per i dettagli sull'API, CreateTopicconsulta AWS SDK per .NET API Reference.
-