Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Ein Amazon SNS-Thema ist ein logischer Zugriffspunkt, der als ein Kommunikationskanal fungiert. Mit einem Thema können Sie mehrere Endpunkte gruppieren (z. B. AWS Lambda Amazon SQS, HTTP/S oder eine E-Mail-Adresse).
Zum Senden der Nachrichten eines Nachrichtenproduktionssystems (etwa einer e-Commerce-Website), die mit mehreren anderen Services zusammenarbeiten, die dessen Nachrichten benötigen (beispielsweise Checkout- und Erfüllungssysteme) können Sie ein Thema für Ihr Produktionssystem erstellen.
Die erste und häufigste Amazon SNS-Aufgabe ist das Erstellen eines Themas. Auf dieser Seite wird gezeigt AWS Management Console, wie Sie die, und die verwenden können AWS SDK für Java, um ein Thema AWS SDK for .NET zu erstellen.
Während der Erstellung wählen Sie einen Thementyp (Standard oder FIFO) und benennen das Thema. Der Thementyp oder -name kann nach dem Erstellen eines Themas nicht geändert werden. Alle anderen Konfigurationsoptionen sind während der Themenerstellung optional und Sie können sie später bearbeiten.
Wichtig
Fügen Sie keine persönlich identifizierbare Informationen (PII) oder andere vertrauliche oder sensible Informationen in Themennamen hinzu. Themennamen sind für andere Amazon Web Services zugänglich, einschließlich CloudWatch Logs. Themennamen sind nicht für private oder sensible Daten gedacht.
Um ein Thema mit dem zu erstellen AWS Management Console
Durch die Erstellung eines Themas in Amazon SNS wird die Grundlage für die Nachrichtenverteilung geschaffen, sodass Sie Nachrichten veröffentlichen können, die an mehrere Abonnenten verteilt werden können. Dieser Schritt ist wichtig, um den Typ, die Verschlüsselungseinstellungen und die Zugriffsrichtlinien des Themas zu konfigurieren und sicherzustellen, dass das Thema den Sicherheits-, Compliance- und Betriebsanforderungen des Unternehmens entspricht.
Melden Sie sich bei der Amazon-SNS-Konsole
an. -
Führen Sie eine der folgenden Aktionen aus:
-
Wenn noch nie zuvor Themen unter Ihrem AWS-Konto Konto erstellt wurden, lesen Sie die Beschreibung von Amazon SNS auf der Startseite.
-
Wenn AWS-Konto zuvor Themen unter Ihrem Konto erstellt wurden, wählen Sie im Navigationsbereich die Option Themen aus.
-
-
Klicken Sie auf der Seite Themen auf Create New Topic.
-
Führen Sie auf der Seite Create subscription (Abonnement erstellen) im Abschnitt Details die folgenden Schritte aus:
-
FürTypWählen Sie einen Thementyp aus (Standard-oderFIFO).
-
Geben Sie den Namen des neuen Themas ein. Für eineFIFO-ThemaFügen SieFIFOam Ende des Namens hinzu.
-
(Optional) Geben Sie einen Display name (Anzeigenamen) für Ihr Thema ein.
Wichtig
Wenn Sie einen E-Mail-Endpunkt abonnieren, darf die kombinierte Zeichenanzahl für den Anzeigenamen des Amazon-SNS-Themas und die sendende E-Mail-Adresse (z. B. no-reply@sns.amazonaws.com) 320 UTF-8-Zeichen nicht überschreiten. Sie können ein Verschlüsselungstool eines Drittanbieters verwenden, um die Länge der Absenderadresse zu überprüfen, bevor Sie einen Anzeigenamen für Ihr Amazon-SNS-Thema konfigurieren.
-
(Optional) Für ein FIFO-Thema können SieDeduplizierung für inhaltsbasierte Nachrichten, um die Standardnachrichtendeduplizierung zu aktivieren. Weitere Informationen finden Sie unter Amazon SNS SNS-Nachrichtendeduplizierung für FIFO-Themen.
-
-
(Optional) Erweitern Sie den Abschnitt Encryption (Verschlüsselung) und gehen Sie wie folgt vor. Weitere Informationen finden Sie unter Sicherung von Amazon SNS SNS-Daten mit serverseitiger Verschlüsselung.
-
Wählen Sie Enable encryption (Verschlüsselung aktivieren) aus.
-
Geben Sie den AWS KMS Schlüssel an. Weitere Informationen finden Sie unter Wichtige Begriffe.
Für jeden KMS-Typ werden Description (Beschreibung), Account (Konto) und KMS ARN (KMS-ARN) angezeigt.
Wichtig
Wenn Sie nicht der Besitzer des KMS-Schlüssels sind oder wenn Sie sich mit einem Konto anmelden, das über keine
kms:ListAliases
- undkms:DescribeKey
-Berechtigungen verfügt, können Sie auf der Amazon-SNS-Konsole keine Informationen über den KMS aufrufen.Bitten Sie den Inhaber des KMS, Ihnen diese Berechtigungen zu erteilen. Beispiele und weitere Informationen zu AWS KMS -Berechtigungen finden Sie unter API-Berechtigungen: Referenztabelle für Aktionen und Ressourcen im AWS Key Management Service Benutzerhandbuch.
-
Das AWS verwaltete KMS für Amazon SNS (Standard) alias/aws/sns ist standardmäßig ausgewählt.
Anmerkung
Beachten Sie Folgendes:
-
Wenn Sie das erste Mal verwenden AWS Management Console , um das AWS verwaltete KMS für Amazon SNS für ein Thema anzugeben, AWS KMS wird das AWS verwaltete KMS für Amazon SNS erstellt.
-
Alternativ können Sie, wenn Sie die
Publish
Aktion zum ersten Mal für ein Thema mit aktivierter SSE verwenden, das AWS KMS AWS verwaltete KMS für Amazon SNS erstellen.
-
-
Um ein benutzerdefiniertes KMS von Ihrem AWS Konto aus zu verwenden, wählen Sie das KMS-Schlüsselfeld und dann das benutzerdefinierte KMS aus der Liste aus.
Anmerkung
Anweisungen zur Erstellung benutzerdefinierter KMSs Schlüssel finden Sie unter Creating Keys im AWS Key Management Service Developer Guide
-
Um einen benutzerdefinierten KMS-ARN von Ihrem AWS Konto oder einem anderen AWS Konto zu verwenden, geben Sie ihn in das Feld KMS-Schlüssel ein.
-
-
-
(Optional) Standardmäßig kann nur der Eigentümer des Themas das Thema abonnieren oder Veröffentlichungen dazu vornehmen. Um zusätzliche Zugriffsberechtigungen zu konfigurieren, erweitern Sie den Abschnitt Access policy (Zugriffsrichtlinie). Weitere Informationen erhalten Sie unter Identity and Access Management in Amazon SNS und Beispiele für die Zugriffskontrolle in Amazon SNS.
Anmerkung
Wenn Sie ein Thema mit der Konsole erstellen, verwendet die Standardrichtlinie den Bedingungsschlüssel
aws:SourceOwner
. Dieser Schlüssel ist ähnlich wieaws:SourceAccount
. -
(Optional) Um zu konfigurieren, wie Amazon SNS fehlgeschlagene Nachrichtenzustellversuche wiederholt, erweitern Sie den Abschnitt Delivery retry policy (HTTP/S) (Richtlinie für die Zustellungswiederholung (HTTP/S)). Weitere Informationen finden Sie unter Wiederholungsversuche bei der Nachrichtenzustellung Amazon SNS.
-
(Optional) Um zu konfigurieren, wie Amazon SNS die Zustellung von Nachrichten protokolliert CloudWatch, erweitern Sie den Abschnitt Protokollierung des Lieferstatus. Weitere Informationen finden Sie unter Zustellungsstatus von Amazon SNS Nachrichtenübermittmittungen.
-
(Optional) Wenn Sie Metadaten-Tags zum Thema hinzufügen, erweitern Sie den Tag-Abschnitt, geben Sie einen Schlüssel und einen Wert ein (optional), und wählen Sie Tag hinzufügen aus. Weitere Informationen finden Sie unter Markierung von Amazon-SNS-Themen.
-
Wählen Sie Thema erstellen aus.
Das Thema wird erstellt und die
MyTopic
Seite wird angezeigt.Der Name, der ARN, (optional) der Anzeigename und die AWS Konto-ID des Themenbesitzers werden im Abschnitt Details angezeigt.
-
Kopieren Sie das Thema ARN in die Zwischenablage, zum Beispiel:
arn:aws:sns:us-east-2:123456789012:MyTopic
Um ein Thema mit einem AWS SDK zu erstellen
Um ein AWS SDK zu verwenden, müssen Sie es mit Ihren Anmeldeinformationen konfigurieren. Weitere Informationen finden Sie unter Die Dateien für die gemeinsame Konfiguration und die Anmeldeinformationen im AWS SDKs Referenzhandbuch zu Tools.
Die folgenden Code-Beispiele zeigen, wie CreateTopic
verwendet wird.
- SDK for .NET
-
Anmerkung
Weitere Informationen finden Sie unter GitHub. Hier finden Sie das vollständige Beispiel und erfahren, wie Sie das AWS -Code-Beispiel-
einrichten und ausführen. Erstellen Sie ein Thema mit einem bestimmten Namen.
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; } }
Erstellen Sie ein neues Thema mit einem Namen und spezifischen FIFO- und Deduplizierungsattributen.
/// <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; }
-
Einzelheiten zur API finden Sie CreateTopicin der AWS SDK for .NET API-Referenz.
-