Die S3-Objektspeicherfunktion von Amazons Cloud-Computing-Plattform AWS wird häufig von Entwicklern und Unternehmen genutzt. S3-Buckets können verschiedene Dateien speichern und Berechtigungen festlegen, um den öffentlichen Netzwerkzugriff bereitzustellen. Viele Entwickler speichern verschiedene statische Dateien für Remote-Aufrufe direkt in S3. Aber hier gibt es ein Problem. S3-Buckets erheben Gebühren für HTTP-Anfragen und Bandbreite. Diese Gebühren sind angemessen, aber die Abrechnungsregeln von S3 berechnen auch für falsche Anfragen Gebühren.

Zuvor hatte ein Entwickler festgestellt, dass auf seinen S3-Bucket häufig Unbefugte zugegriffen hatten. Dann blockierte der Entwickler direkt den Zugriff auf die entsprechende IP/UA und beim tatsächlichen Zugriff traten Fehler wie 403 auf.

Unerwartet erhielt ich dennoch eine riesige Rechnung von AWS, da AWS immer noch Anfragegebühren für fehlerhafte Anfragen wie HTTP 403 erhebt, die den Zugriff verbieten. Mit anderen Worten: Selbst wenn eine IP oder UA gesperrt wird und diese Person weiterhin häufig böswillige Anfragen stellt, entstehen den Entwicklern hohe Rechnungen, die einige Entwickler über Nacht in den Bankrott treiben können.

Nachdem der Entwickler AWS kontaktiert hatte, um das Problem zu lösen, stornierte AWS die Rechnung über die Anforderungsgebühr. AWS betonte jedoch, dass dies eine angemessene Gebühr sei, da die ursprünglichen Abrechnungsregeln nicht darauf hindeuteten, dass es sich bei HTTP 403 um eine kostenlose Anfrage handele.

Dieses Problem hat auch bei vielen Entwicklern und Unternehmen Anlass zur Sorge gegeben. Da der Name des AWSS3-Buckets individuell angepasst und die nachfolgende Adresse festgelegt ist, ist es sogar möglich, verschiedene Bucket-Namen aufzuzählen, um die Rechnung bewusst zu putzen. Für Entwickler und Unternehmen ist dieses Problem kaum zu vermeiden. Immerhin wurde 403 eingestellt, und das Setzen anderer Fehlercodes hilft nicht, da diese alle kostenpflichtig sind.

Am 13. Mai veröffentlichte AWS eine wichtige Abrechnungsankündigung und kündigte an, dass von diesem Tag an für nicht autorisierte Anfragen, die von privaten oder geschäftlichen AWS-Konten in allen Regionen generiert werden, keine Gebühren mehr erhoben werden, einschließlich Bandbreitengebühren.

Ein zusätzlicher Hinweis ist, dass, wenn die Anfrage vom Eigentümer selbst gestellt wird, die Anfragegebühr auch dann berechnet wird, wenn es sich um HTTP 403 handelt. Daher ist es für Entwickler am besten, APIKEY bei der Konfiguration zu überprüfen und direkte Aufrufe über ihre eigenen Konten so weit wie möglich zu vermeiden. Andernfalls wird Ihnen im Falle eines versehentlichen 403-Fehlers trotzdem eine Rechnung berechnet.

Im Folgenden sind alle nicht abrechenbaren Statuscodes für AWSS3 nach dem Update aufgeführt (außer Besitzerzugriff):

  • HTTP301

  • HTTP307

  • HTTP400

  • HTTP403

  • HTTP404

  • HTTP405

  • HTTP409

  • HTTP411

  • HTTP412

  • HTTP5XX

  • Wenn der Entwickler außerdem ein benutzerdefiniertes Fehlerdokument oder eine benutzerdefinierte Umleitung festlegt, werden für alle Anfragen unabhängig von ihrem Status weiterhin die Anfragegebühr und die daraus resultierende Bandbreitengebühr berechnet.