Authentifizieren von SOAP-Anforderungen - Amazon Simple Storage Service

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.

Authentifizieren von SOAP-Anforderungen

Anmerkung

Die SOAP-Unterstützung über HTTP ist veraltet, SOAP steht über HTTPS aber noch zur Verfügung. Neue Amazon-S3-Funktionen werden unter SOAP nicht unterstützt. Wir empfehlen, statt SOAP entweder die REST-API oder die AWS-SDKs zu verwenden.

Jede nicht anonyme Anfrage muss Authentifizierungsinformationen enthalten, um die Identität des Prinzipals einzurichten, der die SOAP-Anfrage stellt. In SOAP wird die Authentifizierungsinformation in den folgenden Elemente der SOAP-Anfrage abgelegt:

  • Ihre AWS-Zugriffsschlüssel-ID.

    Anmerkung

    Bei authentifizierten SOAP-Anfragen werden keine temporären Sicherheitsanmeldeinformationen unterstützt. Weitere Informationen den verschiedenen Anmeldeinformationen finden Sie unter Senden von Anforderungen.

  • Timestamp: Dabei muss es sich um ein dateTime (siehe http://www.w3.org/TR/xmlschema-2/#dateTime) in der Zeitzone Coordinated Universal Time (Greenwich Mean Time) handeln, beispielsweise 2009-01-01T12:00:00.000Z. Die Autorisierung schlägt fehl, wenn dieser Zeitstempel um mehr als 15 Minuten von der Uhr auf Amazon-S3-Servern abweicht.

  • Signature: Der RFC 2104 HMAC-SHA1-Digest (siehe http://www.ietf.org/rfc/rfc2104.txt) der Verkettung von "AmazonS3" + OPERATION + Zeitstempel, wobei Ihr geheimer AWS-Zugriffsschlüssel als Schlüssel verwendet wird. In der folgenden CreateBucket-Beispielanfrage würde das Signatur-Element den HMAC-SHA1-Digest mit dem Wert "AmazonS3CreateBucket2009-01-01T12:00:00.000Z" enthalten:

In der folgenden CreateBucket-Beispielanfrage würde das Signatur-Element den HMAC-SHA1-Digest mit dem Wert "AmazonS3CreateBucket2009-01-01T12:00:00.000Z" enthalten:

Beispiel
<CreateBucket xmlns="https://doc.s3.amazonaws.com/2006-03-01"> <Bucket>quotes</Bucket> <Acl>private</Acl> <AWSAccessKeyId>AKIAIOSFODNN7EXAMPLE</AWSAccessKeyId> <Timestamp>2009-01-01T12:00:00.000Z</Timestamp> <Signature>Iuyz3d3P0aTou39dzbqaEXAMPLE=</Signature> </CreateBucket>
Anmerkung

SOAP-Anfragen, und zwar sowohl authentifizierte als auch anonyme, müssen mit SSL an Amazon S3 gesendet werden. Amazon S3 gibt einen Fehler zurück, wenn Sie eine SOAP-Anfrage über HTTP senden.

Wichtig

Aufgrund von unterschiedlichen Interpretationen dahingehend, wie eine zusätzliche Zeitgenauigkeit wegfallen kann, sollten .NET-Benutzer darauf achten, Amazon S3 keine übermäßig spezifischen Zeitstempel zu senden. Dies kann bewerkstelligt werden, indem manuell DateTime-Objekte mit einer Millisekunde Genauigkeit erstellt werden.