Google Cloud Storage + Transloadit
Buckets in Google Cloud Storage über eigene Robots zum Importieren und Speichern an eine Assembly anbinden. Die Robots nutzen Zugangsdaten eines Dienstkontos.
Ausführbare Anleitung
Integration aufbauen
Dieses Template liest ein Objekt aus Google Cloud Storage, ändert seine Größe und schreibt ein Ergebnis unter processed/, wobei es die IAM-Richtlinie des Buckets verwendet.
- Erstellen Sie einen privaten Google-Cloud-Storage-Bucket mit einheitlichem Zugriff auf Bucket-Ebene und erteilen Sie einem dedizierten Dienstkonto die erforderlichen Bucket-Berechtigungen.
- Speichern Sie den JSON-Schlüssel und die Projektwerte des Dienstkontos als Template-Zugangsdaten mit dem Namen my_gcs_credentials.
- Fügen Sie die Instructions in ein Template ein und starten Sie eine Assembly mit diesem Template.
Instructions des Templates
{
"steps": {
"imported": {
"robot": "/google/import",
"credentials": "my_gcs_credentials",
"path": "incoming/photo.jpg"
},
"resized": {
"robot": "/image/resize",
"use": "imported",
"width": 1200,
"height": 1200,
"resize_strategy": "fit"
},
"exported": {
"robot": "/google/store",
"use": "resized",
"credentials": "my_gcs_credentials",
"acl": null,
"path": "processed/${file.url_name}"
}
}
}Authentifizierung
- Erstellen Sie ein dediziertes Google-Cloud-Dienstkonto und erteilen Sie die Bucket-Berechtigungen, die der Workflow benötigt.
- Für dieses Round-Trip-Rezept muss das Dienstkonto das Eingabeobjekt auflisten und lesen sowie das Ausgabeobjekt erstellen können. Das Überschreiben eines vorhandenen Pfads erfordert zusätzlich eine Löschberechtigung.
- Laden Sie den JSON-Schlüssel des Dienstkontos einmalig herunter, laden Sie ihn in die Transloadit-Template-Zugangsdaten hoch und schützen und rotieren Sie ihn wie langlebige Zugangsdaten.
Einschränkungen und Hinweise zum Betrieb
- Transloadit-Template-Zugangsdaten verwenden einen hochgeladenen JSON-Schlüssel eines Dienstkontos; Workload Identity und Application Default Credentials sind innerhalb dieser Robots nicht verfügbar.
- Der Robot zum Speichern verwendet standardmäßig public-read. Dieses Rezept setzt acl auf null für einen Bucket mit einheitlichem Zugriff auf Bucket-Ebene, bei dem IAM den Zugriff steuert und ACL-Anfragen für Objekte abgelehnt werden. Halten Sie den Bucket über seine IAM-Richtlinie privat.
- Nicht rekursive Verzeichnisimporte enthalten nur direkt untergeordnete Einträge. Aktivieren Sie den Parameter recursive und verwenden Sie Paginierungs-Tokens für tiefer verschachtelte oder größere Importe.
Weitere Integrationen
Bauen Sie Ihren Stack weiter aus
Amazon S3
Nutzen Sie dedizierte Robots, um aus Amazon S3 zu importieren und dorthin zu exportieren.
Cloudflare R2
R2-Objekte mit eigenen Robots zum Importieren und Speichern verarbeiten.
Supabase
Verbinden Sie Supabase Storage über den S3-kompatiblen Endpunkt.
Tigris
Importieren und exportieren Sie Tigris-Objekte mit vollwertigen Robots.