Informations d’identification pour les services tiers
Transloadit peut importer des fichiers depuis votre bucket cloud ou votre serveur, ou y exporter
des fichiers. Pour nous authentifier, nous avons besoin d’informations d’identification.
Pour les exportations, utilisez des
informations d’identification en écriture seule si possible.
Vous pouvez les définir directement dans les paramètres de vos
Robots d’importation et d’exportation
(souvent via key et secret), mais nous vous
recommandons d’utiliser plutôt les informations d’identification de Template. Avec les informations
d’identification de Template, vous stockez séparément un ensemble d’informations d’identification,
lui attribuez un nom unique, puis y faites référence par ce nom via le
paramètre de Robot credentials.
Vous pouvez consulter la documentation de chaque Robot
pour en savoir plus.
L’utilisation des informations d’identification de Template est entièrement facultative.
Nous avons créé les informations d’identification de Template pour vous permettre de :
- Exclure les secrets du fournisseur du JSON du Template que vous partagez.
- Réutiliser facilement vos informations d’identification dans plusieurs Templates.
- Envoyer plus librement des Assembly Instructions directement (sans utiliser de Template). Bien que les Templates soient recommandés, cela permet le prototypage sans transmettre de secrets à chaque fois.
- Révoquer les informations d’identification divulguées et les remplacer sans modifier tous vos Templates ni votre code.
- Ajouter des jetons. Certains fournisseurs cloud exigent un parcours OAuth interactif pour accorder un accès à Transloadit. L’interface web des informations d’identification de Template le permet.
Voici des Assembly Instructions qui utilisent des
ensembles d’informations d’identification de Template précédemment enregistrés dans votre compte sous les noms
my_s3_credentials et my_youtube_credentials.
Elles importent des vidéos depuis un bucket S3 et les téléversent sur YouTube en tant que vidéos
privées :
{
"steps": {
"imported": {
"robot": "/s3/import",
"credentials": "my_s3_credentials",
"path": "/some/path"
},
"exported": {
"robot": "/youtube/store",
"use": "imported",
"credentials": "my_youtube_credentials",
"title": "My processed video",
"description": "A video processed with Transloadit",
"category": "science & technology",
"keywords": "transloadit",
"visibility": "private"
}
}
}
Comment créer un ensemble d’informations d’identification de Template
- Accédez à la page Informations d’identification de votre Workspace. Sélectionnez Nouvel ensemble d’informations d’identification, ou Ajouter un nouvel ensemble d’informations d’identification si vous n’en avez pas encore créé.
- Choisissez le fournisseur sous Service. Saisissez un Nom reconnaissable et renseignez les champs du fournisseur.
- Sélectionnez Créer. Lorsque vous saisissez directement une clé ou un jeton, la Console enregistre l’ensemble d’informations d’identification et revient à la liste des informations d’identification. Lorsque vous vous connectez via OAuth, elle vous redirige d’abord vers le fournisseur pour que vous approuviez l’accès.
Utilisez le nom enregistré comme valeur de credentials dans le
Robot d’importation ou d’exportation approprié. Pour connaître
les valeurs requises et les autorisations du fournisseur, consultez le
guide de configuration d’un bucket Google Cloud, le
guide de configuration de DigitalOcean Spaces ou la
documentation du Robot concerné.
Les informations d’identification de Template authentifient Transloadit auprès du fournisseur ;
elles n’autorisent pas les téléversements de vos utilisateurs. Pour les téléversements depuis un
navigateur avec une Auth Key, autorisez les requêtes sur votre backend et utilisez
Signature Authentication, en conservant l’Auth Secret sur le serveur.
Définissez "allow_steps_override": false dans le Template enregistré
lorsque les utilisateurs qui téléversent des fichiers ne doivent pas modifier les Steps du Template
enregistré.
Vimeo
Vimeo OAuth dans la Console permet les envois avec /vimeo/store. /vimeo/import nécessite un jeton d’accès personnel de votre propre application Vimeo. Vimeo réserve aux applications OAuth de ses partenaires l’accès aux fichiers vidéo des autres membres, et Transloadit n’est pas partenaire de Vimeo. Répéter OAuth n’ajoute pas cette autorisation.
- Connectez-vous à developer.vimeo.com/apps avec le compte Vimeo propriétaire des vidéos, puis créez une application ou sélectionnez votre propre application.
- Dans Authentication, ouvrez Generate Access Token et sélectionnez Authenticated (you).
- Sélectionnez Public, Private et Video Files (
public,privateetvideo_files). Pour utiliser aussi le jeton avec/vimeo/store, sélectionnez Upload, Edit et Interact (upload,editetinteract) et vérifiez que votre application dispose de l’autorisation d’envoyer des vidéos à Vimeo. - Générez et copiez le jeton. Dans la Console, créez un ensemble d’informations d’identification de Template, sélectionnez Vimeo, choisissez Coller un jeton d’accès personnel et collez-le dans Jeton d’accès Vimeo.
- Enregistrez cet ensemble sous un nom reconnaissable et utilisez ce nom comme valeur de
credentialsdans votre Robot.
L’enregistrement vérifie votre compte Vimeo et les autorisations du jeton. Le jeton est stocké sous
access_token et n’est jamais réaffiché dans la Console. Les téléchargements de vidéos dépendent toujours de
votre offre Vimeo et des autorisations de la vidéo. Le téléchargement de l’original (source)
nécessite aussi que Vimeo ait conservé le fichier original. Consultez le guide des jetons Vimeo.
Reconnecter Vimeo
Mettre à jour ne relance pas OAuth et n’accorde aucune autorisation supplémentaire. Pour reconnecter Vimeo, utilisez Supprimer sur l’ensemble d’informations d’identification, puis recréez-le sous le même nom pour que vos Templates continuent de le référencer. La suppression d’un ensemble d’informations d’identification Vimeo révoque son jeton auprès de Vimeo, y compris pour toute autre utilisation de ce même jeton. Générez un nouveau jeton d’accès personnel avant de le coller à nouveau. Si la révocation échoue, la suppression échoue aussi et vous pouvez réessayer. Vous pouvez également remplacer le jeton avec Mettre à jour ; laissez le champ du jeton vide pour conserver le jeton enregistré.
Ne nous accordez que les privilèges nécessaires
En appliquant quelques principes de sécurité, nous souhaitons disposer d’aussi peu de privilèges que possible pour faire notre travail. Si vous exportez des fichiers vers votre bucket Amazon S3, par exemple, il est tout à fait possible de créer un utilisateur IAM disposant uniquement d’un accès en écriture pour cela. Limiter les autorisations réduit les dommages qu’une clé divulguée peut causer. Lorsqu’un fournisseur associe l’accès en écriture à un accès en lecture ou en suppression, limitez l’ensemble d’informations d’identification à un bucket dédié plutôt qu’à l’ensemble de votre compte.