Comment configurer un compartiment Amazon S3 ?
- Créez un compartiment S3 dans la région AWS de votre choix. Laissez Block Public Access activé et utilisez le paramètre Object Ownership « Bucket owner enforced » pour un compartiment privé. Notez le nom et la région du compartiment.
- Configurez une identité AWS dédiée à Transloadit, limitée au compartiment et au préfixe de destination. Suivez la politique d’autorisations de /s3/store (English), y compris ses autorisations supplémentaires pour les balises, la découverte de la région et le chiffrement. N’utilisez pas les clés d’accès de l’utilisateur racine.
- Enregistrez un ensemble d’informations d’identification de Template Amazon S3 avec l’ID de clé d’accès (
key), la clé d’accès secrète (secret),bucketetbucket_region. Conservez les secrets AWS sur des backends de confiance. Pour les informations d’identification AWS de courte durée, suivez les recommandations du Robot sur les informations d’identification temporaires (English). - Référencez le nom de l’ensemble d’informations d’identification dans votre Template et définissez explicitement
acl: "bucket-default". Si vous omettezacl, la valeur par défautpublic-readdu Robot est utilisée ;privateenvoie également une ACL. L’exemple suivant omet l’en-tête ACL et écrit sous le préfixeuploads/de la politique :
{
"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}"
}
}
}
- Remplacez
YOUR_S3_CREDENTIALSpar le nom de l’ensemble d’informations d’identification enregistré. L’enregistrement d’informations d’identification n’autorise pas les téléversements : authentifiez les utilisateurs et autorisez les téléversements sur votre backend, et rendez la Signature Authentication obligatoire pour les flux navigateur signés. Suivez les recommandations de protection des informations d’identification et des Instructions avant d’exposer un flux de téléversement. - Testez le Template avec un fichier non sensible, consultez l’Assembly Status une fois l’Assembly terminée et vérifiez l’objet dans votre compartiment. Une URL de résultat renvoyée n’accorde pas d’accès public en lecture. Une autorisation d’écriture peut écraser des clés existantes ; choisissez des chemins uniques et envisagez le versionnage S3 pour la récupération.
En savoir plus
- Pour en savoir plus sur les Templates et la sécurité, consultez notre documentation sur les Templates.
- Pour en savoir plus sur l’enregistrement sur S3, notamment la personnalisation des noms de fichiers, consultez la documentation du Robot 🤖/s3/store (English).
- Pour téléverser des fichiers depuis votre propre application Node.js, suivez le tutoriel de téléversement vers Amazon S3 (English). Les tutoriels de stockage de fichiers (English) couvrent également les flux de travail avec curl et rclone.