Supabase + Transloadit
Importer et exporter des objets Supabase Storage via son point de terminaison compatible S3 grâce à des Robots Transloadit dédiés.
Recette exécutable
Mettre en place l’intégration
Ce Template importe un objet Supabase Storage, le redimensionne et écrit le résultat dans le même bucket sous processed/.
- Activez le point de terminaison S3 de Supabase Storage et générez des clés d’accès côté serveur.
- Enregistrez les valeurs de connexion S3 sous la forme d’un ensemble d’informations d’identification de Template nommé my_supabase_credentials.
- Collez les Instructions dans un Template et lancez une Assembly à partir de ce Template.
Instructions du Template
{
"steps": {
"imported": {
"robot": "/supabase/import",
"credentials": "my_supabase_credentials",
"path": "incoming/photo.jpg"
},
"resized": {
"robot": "/image/resize",
"use": "imported",
"width": 1200,
"height": 1200,
"resize_strategy": "fit"
},
"exported": {
"robot": "/supabase/store",
"use": "resized",
"credentials": "my_supabase_credentials",
"path": "processed/${file.url_name}"
}
}
}Authentification
- Générez des clés d’accès S3 dans les paramètres S3 de Supabase Storage et copiez le point de terminaison et la région depuis le même écran.
- Enregistrez le bucket, le point de terminaison de stockage direct, la région, l’Access Key ID et la Secret Access Key dans un ensemble d’informations d’identification de Template Transloadit.
- Traitez ces valeurs comme des identifiants côté serveur. Supabase indique que les clés d’accès S3 générées contournent la sécurité au niveau des lignes (Row Level Security).
- Pour les exports par utilisateur, le Robot /supabase/store peut transmettre un JWT utilisateur Supabase dans le paramètre session_token, avec la référence du projet et la clé anon, afin que Supabase puisse appliquer la Row Level Security.
Limitations et notes opérationnelles
- Les clés d’accès S3 générées offrent un large accès côté serveur à l’ensemble des buckets de Storage et contournent les politiques RLS. Configurez uniquement le bucket et les chemins prévus, mais ne considérez pas ces paramètres du flux de travail comme des restrictions des informations d’identification.
- L’authentification par jeton de session JWT est disponible pour le Robot /supabase/store. Le Robot /supabase/import utilise toujours l’authentification par clé d’accès S3.
- Pour les fichiers volumineux, utilisez le nom d’hôte de stockage direct recommandé par Supabase plutôt que le nom d’hôte de l’API du projet.
Autres intégrations
Continuez à développer votre stack
Amazon S3
Importer depuis Amazon S3 et exporter vers Amazon S3 avec des Robots dédiés.
Cloudflare R2
Traiter des objets R2 avec des Robots dédiés à l’importation et au stockage.
Tigris
Importer et exporter des objets Tigris avec des Robots natifs.
Azure Blob Storage
Connecter des conteneurs Azure Blob Storage aux pipelines d’Assemblies.