Verteilung zu HTTP/S-Endpunkten - Amazon Simple Notification Service

Verteilung zu HTTP/S-Endpunkten

Sie können Amazon SNS verwenden, um Benachrichtigungen an einzelne oder mehrere HTTP- oder HTTPS-Endpunkte zu senden. Wenn Sie ein Thema für einen Endpunkt abonniert haben, können Sie eine Benachrichtigung zu diesem Thema veröffentlichen Amazon SNS sendet eine HTTP POST-Anforderung zur Zustellung des Inhalts der Benachrichtigung an den registrierten Endpunkt. Wenn Sie den Endpunkt abonniert haben, können Sie auswählen, ob Amazon SNS HTTP oder HTTPS zum Senden der POST-Anforderung an den Endpunkt verwenden soll. Wenn Sie HTTPS verwenden, können Sie die Vorteile der Amazon SNS-Unterstützung für folgende Aktionen nutzen:

  • Server Name Indication (SNI, Servernamensanzeige) - Auf diese Weise kann Amazon SNS; HTTPS-Endpunkte unterstützen, die SNI benötigen. Das kann z. B. ein Server sein, der mehrere Zertifikate für das Hosten mehrerer Domänen benötigt. Weitere Informationen zur SNI (Servernamensanzeige) finden Sie unter Server Name Indication.

  • Standard- und Digest-Zugriffsauthentifizierung— Auf diese Weise können Sie in der HTTPS-URL einen Benutzernamen und ein Kennwort für die HTTP POST-Anforderung angeben, z. B.https://user:password@domain.comoderhttps://user@domain.com Der Benutzername und das Kennwort sind über die SSL-Verbindung verschlüsselt, die bei der Verwendung von HTTPS aufgebaut wird. Nur der Domänenname wird als Klartext gesendet. Weitere Informationen zu Basic and Digest Access Authentication finden Sie unter RFC-2617.

    Wichtig

    HTTPS-URLs können von der Amazon SNS-API-Aktion GetSubscriptionAttributes nur für Prinzipale abgerufen werden, denen Sie API-Zugriff gewährt haben.

    Anmerkung

    Die Client-Service muss die HTTP/1.1 401 Unauthorized-Header-Antwort unterstützen.

Die Anforderung enthält den Betreff und die Nachricht, die zum Thema veröffentlicht wurde, sowie Metadaten zur Benachrichtigung in einem JSON-Dokument. Die Anforderung sieht ähnlich aus wie die folgende HTTP POST-Anforderung: Weitere Informationen über den HTTP-Header und das JSON-Format des Anforderungstextes finden Sie unter HTTP/HTTPS-Header und JSON-Format für eine HTTP/HTTPS-Benachrichtigung.

POST / HTTP/1.1 x-amz-sns-message-type: Notification x-amz-sns-message-id: da41e39f-ea4d-435a-b922-c6aae3915ebe x-amz-sns-topic-arn: arn:aws:sns:us-west-2:123456789012:MyTopic x-amz-sns-subscription-arn: arn:aws:sns:us-west-2:123456789012:MyTopic:2bcfbf39-05c3-41de-beaa-fcfcc21c8f55 Content-Length: 761 Content-Type: text/plain; charset=UTF-8 Host: ec2-50-17-44-49.compute-1.amazonaws.com Connection: Keep-Alive User-Agent: Amazon Simple Notification Service Agent { "Type" : "Notification", "MessageId" : "da41e39f-ea4d-435a-b922-c6aae3915ebe", "TopicArn" : "arn:aws:sns:us-west-2:123456789012:MyTopic", "Subject" : "test", "Message" : "test message", "Timestamp" : "2012-04-25T21:49:25.719Z", "SignatureVersion" : "1", "Signature" : "EXAMPLElDMXvB8r9R83tGoNn0ecwd5UjllzsvSvbItzfaMpN2nk5HVSw7XnOn/49IkxDKz8YrlH2qJXj2iZB0Zo2O71c4qQk1fMUDi3LGpij7RCW7AW9vYYsSqIKRnFS94ilu7NFhUzLiieYr4BKHpdTmdD6c0esKEYBpabxDSc=", "SigningCertURL" : "https://sns.us-west-2.amazonaws.com/SimpleNotificationService-f3ecfb7224c7233fe7bb5f59f96de52f.pem", "UnsubscribeURL" : "https://sns.us-west-2.amazonaws.com/?Action=Unsubscribe&SubscriptionArn=arn:aws:sns:us-west-2:123456789012:MyTopic:2bcfbf39-05c3-41de-beaa-fcfcc21c8f55" }