Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Utiliser des étapes prédéfinies
Lorsque vous créez un flux de travail, vous pouvez choisir d'ajouter l'une des étapes prédéfinies suivantes décrites dans cette rubrique. Vous pouvez également choisir d'ajouter vos propres étapes de traitement de fichiers personnalisées. Pour de plus amples informations, veuillez consulter Utiliser des étapes de traitement de fichiers personnalisées.
Rubriques
Copier le fichier
Une étape de copie de fichier crée une copie du fichier chargé dans un nouvel emplacement Amazon S3. Actuellement, vous ne pouvez utiliser une étape de copie de fichier qu'avec Amazon S3.
L'étape de copie de fichier suivante permet de copier les fichiers dans test
le dossier du compartiment de file-test
destination.
Si l'étape de copie du fichier n'est pas la première étape de votre flux de travail, vous pouvez spécifier l'emplacement du fichier. En spécifiant l'emplacement du fichier, vous pouvez copier soit le fichier utilisé à l'étape précédente, soit le fichier d'origine qui a été chargé. Vous pouvez utiliser cette fonctionnalité pour créer plusieurs copies du fichier original tout en conservant le fichier source intact pour l'archivage des fichiers et la conservation des dossiers. Pour obtenir un exemple, consultez Exemple de balise et de flux de travail de suppression.
Fournissez le compartiment et les informations clés
Vous devez fournir le nom du compartiment et une clé pour la destination de l'étape de copie du fichier. La clé peut être un nom de chemin ou un nom de fichier. Le fait que la clé soit traitée comme un nom de chemin ou comme un nom de fichier dépend de la fin de la clé par la barre oblique (/
).
Si le dernier caractère est/
, votre fichier est copié dans le dossier et son nom ne change pas. Si le dernier caractère est alphanumérique, le fichier téléchargé est renommé avec la valeur clé. Dans ce cas, si un fichier portant ce nom existe déjà, le comportement dépend du paramètre du champ Remplacer existant.
-
Si l'option Remplacer l'existant est sélectionnée, le fichier existant est remplacé par le fichier en cours de traitement.
-
Si l'option Remplacer l'existant n'est pas sélectionnée, rien ne se passe et le traitement du flux de travail s'arrête.
Astuce
Si des écritures simultanées sont exécutées sur le même chemin de fichier, cela peut entraîner un comportement inattendu lors du remplacement de fichiers.
Par exemple, si votre valeur clé esttest/
, les fichiers que vous avez téléchargés sont copiés test
dans le dossier. Si votre valeur clé esttest/today
, (et que l'option Remplacer les fichiers existants est sélectionnée), chaque fichier que vous téléchargez est copié today
dans un fichier nommé dans le test
dossier, et chaque fichier suivant remplace le précédent.
Note
Amazon S3 prend en charge les compartiments et les objets. Il n'y a aucune hiérarchie. Cependant, vous pouvez utiliser des préfixes et des délimiteurs dans les noms de clés d'objets pour indiquer une hiérarchie et organiser vos données de la même manière que les dossiers.
Utiliser une variable nommée dans une étape de copie de fichier
Lors d'une étape de copie de fichier, vous pouvez utiliser une variable pour copier dynamiquement vos fichiers dans des dossiers spécifiques à l'utilisateur. Actuellement, vous pouvez utiliser ${transfer:UserName}
ou ${transfer:UploadDate}
en tant que variable pour copier des fichiers vers un emplacement de destination pour l'utilisateur donné qui télécharge les fichiers, ou en fonction de la date actuelle.
Dans l'exemple suivant, si l'utilisateur richard-roe
télécharge un fichier, celui-ci est copié dans le file-test2/richard-roe/processed/
dossier. Si l'utilisateur mary-major
télécharge un fichier, celui-ci est copié dans le file-test2/mary-major/processed/
dossier.
De même, vous pouvez l'utiliser ${transfer:UploadDate}
comme variable pour copier des fichiers vers un emplacement de destination nommé d'après la date actuelle. Dans l'exemple suivant, si vous définissez la destination ${transfer:UploadDate}/processed
sur le 1er février 2022, les fichiers téléchargés sont copiés dans le file-test2/2022-02-01/processed/
dossier.
Vous pouvez également utiliser ces deux variables ensemble, en combinant leurs fonctionnalités. Par exemple :
-
Vous pouvez définir le préfixe de la clé de destination sur
folder/${transfer:UserName}/${transfer:UploadDate}/
, ce qui créerait des dossiers imbriqués, par exemple.folder/marymajor/2023-01-05/
-
Vous pouvez définir le préfixe de la clé de destination sur
folder/${transfer:UserName}-${transfer:UploadDate}/
, pour concaténer les deux variables, par exemple.folder/marymajor-2023-01-05/
IAMautorisations pour l'étape de copie
Pour qu'une étape de copie réussisse, assurez-vous que le rôle d'exécution de votre flux de travail contient les autorisations suivantes.
{ "Sid": "ListBucket", "Effect": "Allow", "Action": "s3:ListBucket", "Resource": [ "arn:aws:s3:::
destination-bucket-name
" ] }, { "Sid": "HomeDirObjectAccess", "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:DeleteObjectVersion", "s3:DeleteObject", "s3:GetObjectVersion" ], "Resource": "arn:aws:s3:::destination-bucket-name
/*" }
Note
L's3:ListBucket
autorisation n'est nécessaire que si vous ne sélectionnez pas Remplacer l'existant. Cette autorisation vérifie dans votre compartiment si un fichier portant le même nom existe déjà. Si vous avez sélectionné Remplacer l'existant, le flux de travail n'a pas besoin de vérifier la présence du fichier et peut simplement l'écrire.
Si vos fichiers Amazon S3 comportent des balises, vous devez ajouter une ou deux autorisations à votre IAM politique.
-
Ajoutez
s3:GetObjectTagging
un fichier Amazon S3 qui n'est pas versionné. -
Ajoutez
s3:GetObjectVersionTagging
un fichier Amazon S3 versionné.
Déchiffrer le fichier
Le blog sur le AWS stockage contient un article qui décrit comment crypter et déchiffrer des fichiers, crypter et déchiffrer des fichiers avec et
Utilisez PGP le déchiffrement dans votre flux de travail
Transfer Family dispose d'un support intégré pour le déchiffrement de Pretty Good Privacy (PGP). Vous pouvez utiliser le PGP déchiffrement sur les fichiers chargés sur SFTP Amazon Simple Storage Service (Amazon S3) ou FTP Amazon Elastic File System (Amazon)FTPS, ou sur Amazon Elastic File System (Amazon). EFS
Pour utiliser PGP le déchiffrement, vous devez créer et stocker les clés PGP privées qui seront utilisées pour le déchiffrement de vos fichiers. Vos utilisateurs peuvent ensuite chiffrer les fichiers à l'aide des clés de PGP chiffrement correspondantes avant de les télécharger sur votre serveur Transfer Family. Après avoir reçu les fichiers chiffrés, vous pouvez les déchiffrer dans votre flux de travail. Pour voir un didacticiel détaillé, consultez Configuration d'un flux de travail géré pour le déchiffrement d'un fichier.
Pour utiliser le PGP déchiffrement dans votre flux de travail
-
Identifiez un serveur Transfer Family pour héberger votre flux de travail ou créez-en un nouveau. Vous devez disposer de l'ID du serveur avant de pouvoir stocker vos PGP clés AWS Secrets Manager avec le nom secret correct.
-
Enregistrez votre PGP clé AWS Secrets Manager sous le nom secret requis. Pour plus de détails, consultez Gérer les clés PGP. Les flux de travail peuvent localiser automatiquement la bonne PGP clé à utiliser pour le déchiffrement en fonction du nom du secret dans Secrets Manager.
Note
Lorsque vous stockez des secrets dans Secrets Manager, des frais Compte AWS vous sont facturés. Pour plus d’informations sur la tarification, consultez Tarification AWS Secrets Manager
. -
Chiffrez un fichier à l'aide de votre paire de PGP clés. (Pour obtenir la liste des clients pris en charge, voirPGPClients pris en charge.) Si vous utilisez la ligne de commande, exécutez la commande suivante. Pour utiliser cette commande, remplacez-la
par l'adresse e-mail que vous avez utilisée pour créer la paire de PGP clés.username@example.com
Remplacez-le par le nom du fichier que vous souhaitez chiffrer.testfile.txt
gpg -e -r
username@example.com
testfile.txt
-
Téléchargez le fichier crypté sur votre serveur Transfer Family.
-
Configurez une étape de déchiffrement dans votre flux de travail. Pour de plus amples informations, veuillez consulter Ajouter une étape de déchiffrement.
Ajouter une étape de déchiffrement
Une étape de déchiffrement déchiffre un fichier chiffré qui a été chargé sur Amazon S3 ou Amazon dans le EFS cadre de votre flux de travail. Pour plus de détails sur la configuration du déchiffrement, consultezUtilisez PGP le déchiffrement dans votre flux de travail.
Lorsque vous créez votre étape de déchiffrement pour un flux de travail, vous devez spécifier la destination des fichiers déchiffrés. Vous devez également indiquer si vous souhaitez remplacer les fichiers existants si un fichier existe déjà à l'emplacement de destination. Vous pouvez surveiller les résultats du flux de déchiffrement et obtenir des journaux d'audit pour chaque fichier en temps réel à l'aide d'Amazon CloudWatch Logs.
Une fois que vous avez choisi le type de fichier de déchiffrement pour votre étape, la page Configurer les paramètres apparaît. Renseignez les valeurs de la section Configurer les paramètres de PGP déchiffrement.
Les options disponibles sont les suivantes :
-
Nom de l'étape : entrez un nom descriptif pour l'étape.
-
Emplacement du fichier — En spécifiant l'emplacement du fichier, vous pouvez déchiffrer soit le fichier utilisé à l'étape précédente, soit le fichier d'origine qui a été chargé.
Note
Ce paramètre n'est pas disponible s'il s'agit de la première étape du flux de travail.
-
Destination des fichiers déchiffrés : choisissez un compartiment Amazon S3 ou un système de EFS fichiers Amazon comme destination du fichier déchiffré.
-
Si vous choisissez Amazon S3, vous devez fournir un nom de compartiment de destination et un préfixe de clé de destination. Pour paramétrer le préfixe de clé de destination par nom d'utilisateur,
${transfer:UserName}
entrez le préfixe de clé de destination. De même, pour paramétrer le préfixe de clé de destination par date de téléchargement,${Transfer:UploadDate}
entrez le préfixe de clé de destination. -
Si vous choisissez AmazonEFS, vous devez fournir un système de fichiers et un chemin de destination.
Note
L'option de stockage que vous choisissez ici doit correspondre au système de stockage utilisé par le serveur Transfer Family auquel ce flux de travail est associé. Dans le cas contraire, vous recevrez un message d'erreur lorsque vous tenterez d'exécuter ce flux de travail.
-
-
Remplacer un fichier existant : si vous chargez un fichier et qu'un fichier portant le même nom de fichier existe déjà à destination, le comportement dépend de la définition de ce paramètre :
-
Si l'option Remplacer l'existant est sélectionnée, le fichier existant est remplacé par le fichier en cours de traitement.
-
Si l'option Remplacer l'existant n'est pas sélectionnée, rien ne se passe et le traitement du flux de travail s'arrête.
Astuce
Si des écritures simultanées sont exécutées sur le même chemin de fichier, cela peut entraîner un comportement inattendu lors du remplacement de fichiers.
-
La capture d'écran suivante montre un exemple des options que vous pouvez choisir pour l'étape de déchiffrement du fichier.
IAMautorisations pour l'étape de déchiffrement
Pour qu'une étape de déchiffrement réussisse, assurez-vous que le rôle d'exécution de votre flux de travail contient les autorisations suivantes.
{ "Sid": "ListBucket", "Effect": "Allow", "Action": "s3:ListBucket", "Resource": [ "arn:aws:s3:::
destination-bucket-name
" ] }, { "Sid": "HomeDirObjectAccess", "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:DeleteObjectVersion", "s3:DeleteObject", "s3:GetObjectVersion" ], "Resource": "arn:aws:s3:::destination-bucket-name
/*" }, { "Sid": "Decrypt", "Effect": "Allow", "Action": [ "secretsmanager:GetSecretValue", ], "Resource": "arn:aws:secretsmanager:region
:account-id
:secret:aws/transfer/*" }
Note
L's3:ListBucket
autorisation n'est nécessaire que si vous ne sélectionnez pas Remplacer l'existant. Cette autorisation vérifie dans votre compartiment si un fichier portant le même nom existe déjà. Si vous avez sélectionné Remplacer l'existant, le flux de travail n'a pas besoin de vérifier la présence du fichier et peut simplement l'écrire.
Si vos fichiers Amazon S3 comportent des balises, vous devez ajouter une ou deux autorisations à votre IAM politique.
-
Ajoutez
s3:GetObjectTagging
un fichier Amazon S3 qui n'est pas versionné. -
Ajoutez
s3:GetObjectVersionTagging
un fichier Amazon S3 versionné.
Fichier de balises
Pour étiqueter les fichiers entrants en vue d'un traitement ultérieur, utilisez une étape de balise. Entrez la valeur de la balise que vous souhaitez attribuer aux fichiers entrants. Actuellement, l'opération de balise n'est prise en charge que si vous utilisez Amazon S3 pour le stockage de votre serveur Transfer Family.
L'exemple d'étape de balise suivant affecte scan_outcome
et clean
en tant que clé et valeur de balise, respectivement.
Pour qu'une étape de balise réussisse, assurez-vous que le rôle d'exécution de votre flux de travail contient les autorisations suivantes.
{ "Sid": "Tag", "Effect": "Allow", "Action": [ "s3:PutObjectTagging", "s3:PutObjectVersionTagging" ], "Resource": [ "arn:aws:s3:::
DOC-EXAMPLE-BUCKET
/*" ] }
Note
Si votre flux de travail contient une étape de balise qui s'exécute avant une étape de copie ou de déchiffrement, vous devez ajouter une ou deux autorisations à votre IAM politique.
-
Ajoutez
s3:GetObjectTagging
un fichier Amazon S3 qui n'est pas versionné. -
Ajoutez
s3:GetObjectVersionTagging
un fichier Amazon S3 versionné.
Supprimer le fichier
Pour supprimer un fichier traité d'une étape précédente du flux de travail ou pour supprimer le fichier initialement chargé, utilisez une étape de suppression de fichier.
Pour qu'une étape de suppression réussisse, assurez-vous que le rôle d'exécution de votre flux de travail contient les autorisations suivantes.
{ "Sid": "Delete", "Effect": "Allow", "Action": [ "s3:DeleteObjectVersion", "s3:DeleteObject" ], "Resource": "arn:aws:secretsmanager:
region
:account-ID
:secret:aws/transfer/*" }
Variables nommées pour les flux de travail
Pour les étapes de copie et de déchiffrement, vous pouvez utiliser une variable pour effectuer des actions de manière dynamique. Actuellement, AWS Transfer Family prend en charge les variables nommées suivantes.
-
${transfer:UserName}
À utiliser pour copier ou déchiffrer des fichiers vers une destination en fonction de l'utilisateur qui télécharge les fichiers. -
${transfer:UploadDate}
À utiliser pour copier ou déchiffrer des fichiers vers un emplacement de destination en fonction de la date actuelle.
Exemple de balise et de flux de travail de suppression
L'exemple suivant illustre un flux de travail qui balise les fichiers entrants devant être traités par une application en aval, telle qu'une plateforme d'analyse de données. Après avoir balisé le fichier entrant, le flux de travail supprime le fichier initialement chargé pour économiser sur les coûts de stockage.