Wie richte ich einen Amazon-S3-Bucket ein?
- Erstellen Sie einen S3-Bucket in der AWS-Region Ihrer Wahl. Lassen Sie „Block Public Access“ aktiviert und verwenden Sie für einen privaten Bucket die Object-Ownership-Einstellung „Bucket owner enforced“. Notieren Sie sich den Namen und die Region des Buckets.
- Richten Sie eine dedizierte AWS-Identität für Transloadit ein, die auf den Ziel-Bucket und das Präfix beschränkt ist. Befolgen Sie die Berechtigungsrichtlinie für /s3/store, einschließlich der dort genannten zusätzlichen Berechtigungen für Tags, die Ermittlung der Region und die Verschlüsselung. Verwenden Sie keine Zugriffsschlüssel des Root-Kontos.
- Speichern Sie Template-Zugangsdaten für Amazon S3 mit der Zugriffsschlüssel-ID (
key), dem geheimen Zugriffsschlüssel (secret),bucketundbucket_region. Bewahren Sie AWS-Geheimnisse nur auf vertrauenswürdigen Backends auf. Für kurzlebige AWS-Zugangsdaten befolgen Sie die Hinweise zu temporären Zugangsdaten des Robots. - Verweisen Sie in Ihrem Template auf den Namen der Zugangsdaten und setzen Sie explizit
acl: "bucket-default". Wenn Sieaclweglassen, gilt der Standardwertpublic-readdes Robots; auchprivatesendet eine ACL. Das folgende Beispiel lässt den ACL-Header weg und schreibt unter das Präfixuploads/der Richtlinie:
{
"steps": {
":original": {
"robot": "/upload/handle"
},
"exported": {
"robot": "/s3/store",
"use": ":original",
"credentials": "YOUR_S3_CREDENTIALS",
"acl": "bucket-default",
"path": "uploads/${unique_prefix}/${file.url_name}"
}
}
}
- Ersetzen Sie
YOUR_S3_CREDENTIALSdurch den Namen der gespeicherten Zugangsdaten. Das Speichern von Zugangsdaten autorisiert keine Uploads: Authentifizieren Sie Benutzer und autorisieren Sie Uploads in Ihrem Backend, und machen Sie Signature Authentication für signierte Browser-Abläufe verpflichtend. Befolgen Sie die Hinweise zum Schutz von Zugangsdaten und Instructions, bevor Sie einen Upload-Ablauf zugänglich machen. - Testen Sie das Template mit einer nicht sensiblen Datei, prüfen Sie den Assembly Status der abgeschlossenen Assembly und überprüfen Sie das Objekt in Ihrem Bucket. Eine zurückgegebene Ergebnis-URL gewährt keinen öffentlichen Lesezugriff. Mit Schreibberechtigung können vorhandene Schlüssel überschrieben werden. Wählen Sie daher eindeutige Pfade und erwägen Sie S3-Versionierung, damit Sie Objekte wiederherstellen können.
Weitere Informationen
- Weitere Details zu Templates und Sicherheit finden Sie in unserer Template-Dokumentation.
- Weitere Informationen zum Speichern in S3, etwa zum Anpassen von Dateinamen, finden Sie in der Dokumentation zu 🤖/s3/store.
- Um Dateien aus Ihrer eigenen Node.js-Anwendung hochzuladen, folgen Sie dem Tutorial zum Upload in Amazon S3. Die Tutorials zur Dateispeicherung (English) behandeln außerdem Workflows mit curl und rclone.