Etwa 10 Minuten

Aktar mit Amazon S3 verwenden

Amazon S3 ist der Klassiker unter den Objektspeichern und funktioniert mit Aktars Amazon-S3-Vorlage. Sorgfalt braucht nur der öffentliche Zugriff: S3 blockiert ihn standardmäßig, du fügst also entweder eine Bucket-Policy für öffentliches Lesen hinzu oder setzt CloudFront vor den Bucket.

Was du brauchst

  • Ein AWS-Konto
  • Berechtigung zum Anlegen von S3-Buckets und IAM-Benutzern
  • Aktar auf deinem Mac installiert

Schritt für Schritt

  1. 1

    Bucket erstellen

    Klick in der S3-Konsole auf Create bucket, wähle einen weltweit eindeutigen Namen und die Region, die dir am nächsten liegt, zum Beispiel eu-central-1. Die standardmäßige Objekteigentümerschaft "Bucket owner enforced" kannst du beibehalten: Aktar nutzt keine ACLs.

  2. 2

    Öffentliches Lesen erlauben

    Option A, Bucket-Policy: Deaktiviere im Tab Permissions des Buckets die "Block public access"-Einstellungen, die öffentliche Bucket-Policies blockieren, und füge dann diese Bucket-Policy hinzu (ersetze YOUR-BUCKET):

    {
      "Version": "2012-10-17",
      "Statement": [{
        "Sid": "PublicRead",
        "Effect": "Allow",
        "Principal": "*",
        "Action": "s3:GetObject",
        "Resource": "arn:aws:s3:::YOUR-BUCKET/*"
      }]
    }

    Option B, CloudFront: Lass den Bucket privat und erstelle eine CloudFront-Distribution mit dem Bucket als Origin (mit Origin Access Control). So bekommst du HTTPS auf einer eigenen Domain und Caching.

  3. 3

    IAM-Benutzer für Aktar anlegen

    Lege in IAM einen Benutzer an und hänge eine Policy an, die nur erlaubt, was Aktar für diesen Bucket braucht:

    {
      "Version": "2012-10-17",
      "Statement": [
        { "Effect": "Allow", "Action": "s3:ListBucket",
          "Resource": "arn:aws:s3:::YOUR-BUCKET" },
        { "Effect": "Allow",
          "Action": ["s3:PutObject", "s3:GetObject", "s3:DeleteObject"],
          "Resource": "arn:aws:s3:::YOUR-BUCKET/*" }
      ]
    }

    Erstelle dann einen Access Key für den Benutzer und kopiere Access Key ID und Secret Access Key.

  4. 4

    Ziel in Aktar hinzufügen

    Wähle unter Settings → Destinations → Add Destination die Option Amazon S3 und gib die Werte unten ein. Endpunkt und Region müssen zur Region des Buckets passen.

  5. 5

    Testen und speichern

    Klick auf Test Connection, um zu bestätigen, dass der Bucket beschreibbar ist und die öffentliche URL Dateien ausliefert, und dann auf Save.

Einstellungen in Aktar

Trag diese Werte unter Settings → Destinations → Add Destination ein. Die Feldnamen entsprechen der App.

FeldBeispielwert
ProviderAmazon S3
Endpointhttps://s3.eu-central-1.amazonaws.comVerwende die Region deines Buckets.
Regioneu-central-1
Access Key IDAKIA…Vom IAM-Benutzer.
Secret Access Key••••••••
Bucketyour-bucket
Public Base URLyour-bucket.s3.eu-central-1.amazonaws.comOder deine CloudFront-Domain.

Tipps

  • Wenn du Links öffentlich teilst, nimm lieber CloudFront mit eigener Domain: Du bekommst Caching und kannst den Bucket selbst privat halten.
  • Beschränke die IAM-Policy auf einen einzigen Bucket. Aktar braucht nie kontoweite Berechtigungen.
  • Wähle eine Region in deiner Nähe für schnellere Uploads und in der Nähe deines Publikums, wenn du kein CDN nutzt.

Fehlerbehebung

Test Connection meldet einen Fehler zur Region oder eine Weiterleitung

Endpunkt und Region müssen zu der Region passen, in der der Bucket erstellt wurde, zum Beispiel https://s3.eu-central-1.amazonaws.com mit eu-central-1.

Uploads schlagen mit Access Denied fehl

Der IAM-Benutzer braucht s3:PutObject auf YOUR-BUCKET/* und s3:ListBucket auf den Bucket selbst.

Links liefern 403

Die Bucket-Policy fehlt oder wird noch durch "Block public access" blockiert, oder CloudFront kann den Bucket nicht lesen. Siehe Access-Denied-Fehler.

Kommst du nicht weiter?Schau in die FAQ oder frag auf GitHub.