As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Usar etapas predefinidas
Ao criar um fluxo de trabalho, você pode optar por adicionar uma das seguintes etapas predefinidas discutidas neste tópico. Você também pode escolher adicionar suas próprias etapas de processamento de arquivos. Para obter mais informações, consulte Use etapas personalizadas de processamento de arquivos.
Tópicos
Copiar arquivo
Uma etapa de cópia do arquivo cria uma cópia do arquivo carregado em um novo local do Amazon S3. Atualmente, você pode usar uma etapa de cópia de arquivo somente com o Amazon S3.
A etapa de cópia do arquivo a seguir copia os arquivos para a test pasta emamzn-s3-demo-destination-bucket.
Se a etapa de cópia do arquivo não for a primeira etapa do seu fluxo de trabalho, você poderá especificar o Local do arquivo. Ao especificar o local do arquivo, você pode copiar o arquivo usado na etapa anterior ou o arquivo original que foi carregado. Você pode usar esse recurso para fazer várias cópias do arquivo original e, ao mesmo tempo, manter o arquivo de origem intacto para arquivamento e retenção de logs. Para obter um exemplo, consulte Exemplo para marcar e excluir fluxo de trabalho.
Informe o bucket e os principais detalhes
Você deve fornecer o nome do bucket e uma chave para o destino da etapa de cópia do arquivo. A chave pode ser um nome de caminho ou um nome de arquivo. O fato de a chave ser tratada como um nome de caminho ou nome de arquivo é determinado pelo fato de você terminar a chave com o caractere de barra (/).
Se o caractere final for /, seu arquivo será copiado para a pasta e seu nome não será alterado. Se o caractere final for alfanumérico, o arquivo enviado será renomeado para o valor-chave. Nesse caso, se um arquivo com esse nome já existir, o comportamento dependerá da configuração do campo Substituir existente.
-
Se Substituir existente for selecionado, o arquivo existente será substituído pelo arquivo que está sendo processado.
-
Se a opção Substituir existente não estiver selecionada, nada acontecerá e o processamento do fluxo de trabalho será interrompido.
dica
Se as gravações simultâneas forem executadas no mesmo caminho de arquivo, isso poderá resultar em um comportamento inesperado ao substituir arquivos.
Por exemplo, se o valor da chave for test/, os arquivos enviados serão copiados para a pasta test. Se o valor da chave for test/today (e a opção Substituir existente estiver selecionada), todos os arquivos enviados serão copiados para um arquivo nomeado today na pasta test, e cada arquivo seguinte substituirá o anterior.
nota
O Amazon S3 é compatível com buckets e objetos e não há nenhuma hierarquia. No entanto, você pode usar prefixos e delimitadores em nomes de chaves de objetos para sugerir uma hierarquia e organizar seus dados de forma semelhante às pastas.
Use uma variável nomeada em uma etapa de cópia do arquivo
Em uma etapa de cópia de arquivo, você pode usar uma variável para copiar dinamicamente seus arquivos em pastas específicas do usuário. Atualmente, você pode usar ${transfer:UserName} ou ${transfer:UploadDate} como uma variável para copiar arquivos para um local de destino para um determinado usuário que está fazendo o upload dos arquivos ou com base na data atual.
No exemplo a seguir, se o usuário richard-roe fizer upload de um arquivo, ele será copiado para a pasta amzn-s3-demo-destination-bucket/richard-roe/processed/. Se o usuário mary-major fizer upload de um arquivo, ele será copiado para a pasta amzn-s3-demo-destination-bucket/mary-major/processed/.
Da mesma forma, você pode usar ${transfer:UploadDate} como variável para copiar arquivos para um local de destino nomeado com a data atual. No exemplo a seguir, se você definir o destino como ${transfer:UploadDate}/processed em 1º de fevereiro de 2022, os arquivos enviados serão copiados para a pasta amzn-s3-demo-destination-bucket/2022-02-01/processed/.
Você também pode usar essas duas variáveis juntas, combinando suas funcionalidades. Por exemplo, você pode definir o prefixo da chave de destino comofolder/${transfer:UserName}/${transfer:UploadDate}/, o que criaria pastas aninhadas, por exemplo. folder/marymajor/2023-01-05/
Permissões do IAM para a etapa de copiar
Para permitir que uma etapa de cópia seja bem-sucedida, certifique-se de que a função de execução do seu fluxo de trabalho contenha as seguintes permissões.
{ "Sid": "ListBucket", "Effect": "Allow", "Action": "s3:ListBucket", "Resource": [ "arn:aws:s3:::amzn-s3-demo-destination-bucket" ] }, { "Sid": "HomeDirObjectAccess", "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:DeleteObjectVersion", "s3:DeleteObject", "s3:GetObjectVersion" ], "Resource": "arn:aws:s3:::amzn-s3-demo-destination-bucket/*" }
nota
A permissão s3:ListBucket só é necessária se você não selecionar Substituir existente. Essa permissão verifica seu bucket para ver se já existe um arquivo com o mesmo nome. Se você selecionou Substituir existente, o fluxo de trabalho não precisa verificar o arquivo e pode simplesmente gravá-lo.
Se seus arquivos do Amazon S3 tiverem tags, você precisará adicionar uma ou duas permissões à sua política do IAM.
-
Adicione
s3:GetObjectTaggingpara obter um arquivo Amazon S3 que não tenha versão. -
Adicione
s3:GetObjectVersionTaggingpara obter um arquivo Amazon S3 que tenha versão.
Descriptografar arquivo
O blog AWS de armazenamento tem uma postagem que descreve como simplesmente descriptografar arquivos sem escrever nenhum código usando fluxos de trabalho do Transfer Family Managed, criptografar e descriptografar
Algoritmos de criptografia simétrica compatíveis
Para a decodificação PGP, o Transfer Family suporta algoritmos de criptografia simétrica que são usados para criptografar os dados reais do arquivo nos arquivos PGP.
-
Para obter informações detalhadas sobre os algoritmos de criptografia simétrica compatíveis, consulteAlgoritmos de criptografia simétrica PGP.
-
Para obter informações sobre algoritmos de par de chaves PGP usados com esses algoritmos simétricos, consulte. Algoritmos de pares de chaves PGP
Use a descriptografia PGP em seu fluxo de trabalho
O Transfer Family tem suporte integrado para descriptografia Pretty Good Privacy (PGP). Você pode usar a descriptografia PGP em arquivos enviados por SFTP, FTPS ou FTP para o Amazon Simple Storage Service (Amazon S3) ou o Amazon Elastic File System (Amazon EFS).
Para usar a descriptografia PGP, você deve criar e armazenar as chaves privadas PGP que serão usadas para descriptografar seus arquivos. Seus usuários podem então criptografar arquivos usando as chaves de criptografia PGP correspondentes antes de fazer o upload dos arquivos para o servidor Transfer Family. Depois de receber os arquivos criptografados, você pode descriptografar esses arquivos no seu fluxo de trabalho. Para ver um tutorial detalhado, consulte Configurando um fluxo de trabalho gerenciado para descriptografar um arquivo.
Para obter informações sobre algoritmos e recomendações de PGP compatíveis, consulte. Algoritmos de criptografia e decodificação PGP
Para usar a descriptografia PGP em seu fluxo de trabalho
-
Identifique um servidor Transfer Family para hospedar seu fluxo de trabalho ou crie um novo. Você precisa ter o ID do servidor antes de poder armazenar suas chaves PGP no AWS Secrets Manager com o nome secreto correto.
-
Armazene sua chave PGP AWS Secrets Manager com o nome secreto necessário. Para obter detalhes, consulte Gerenciar chaves PGP. Os fluxos de trabalho podem localizar automaticamente a chave PGP correta a ser usada para descriptografia com base no nome secreto no Gerente secreto.
nota
Quando você armazena segredos no Secrets Manager, você Conta da AWS incorre em cobranças. Para obter mais informações sobre preços consulte AWS Secrets Manager Pricing
. -
Criptografe um arquivo usando seu par de chaves PGP. (Para ver uma lista dos TLDs, consulte Clientes PGP compatíveis.) Se você estiver usando a linha de comando, execute o seguinte comando: Para usar esse comando, substitua
pelo endereço de e-mail que você usou para criar o par de chaves PGP. Substituausername@example.compelo nome do arquivo que você deseja criptografar.testfile.txtgpg -e -rusername@example.comtestfile.txtImportante
Ao criptografar arquivos para uso com AWS Transfer Family fluxos de trabalho, sempre certifique-se de especificar um destinatário não anônimo usando o parâmetro.
-rA criptografia anônima (sem especificar um destinatário) pode causar falhas de decodificação no fluxo de trabalho porque o sistema não conseguirá identificar qual chave usar para decodificação. As informações de depuração desse problema estão disponíveis em. Solucionar problemas de criptografia de destinatários anônimos -
Faça o upload do arquivo criptografado para o servidor Transfer Family.
-
Configure uma etapa de descriptografia em seu fluxo de trabalho. Para obter mais informações, consulte Adicionar uma etapa de decodificação.
Adicionar uma etapa de decodificação
Uma etapa de descriptografia descriptografa um arquivo criptografado que foi carregado no Amazon S3 ou no Amazon EFS como parte do seu fluxo de trabalho. Para obter detalhes sobre como configurar a descriptografia, consulte Use a descriptografia PGP em seu fluxo de trabalho.
Ao criar sua etapa de descriptografia para um fluxo de trabalho, você deve especificar o destino dos arquivos descriptografados. Você também deve selecionar se deseja substituir os arquivos existentes se um arquivo já existir no local de destino. Você pode monitorar os resultados do fluxo de trabalho de descriptografia e obter registros de auditoria para cada arquivo em tempo real usando o Amazon Logs. CloudWatch
Depois de escolher o tipo de Descriptografar arquivo para sua etapa, a página Configurar parâmetros é exibida. Preencha os valores da seção Configurar parâmetros de descriptografia do PGP.
As opções disponíveis são as seguintes:
-
Nome da etapa — Insira um nome descritivo para a etapa.
-
Local do arquivo — Ao especificar o local do arquivo, você pode descriptografar o arquivo usado na etapa anterior ou o arquivo original que foi carregado.
nota
Esse parâmetro não estará disponível se essa etapa for a primeira etapa do fluxo de trabalho.
-
Destino para arquivos descriptografados — Escolha um bucket do Amazon S3 ou um sistema de arquivos do Amazon EFS como destino para o arquivo descriptografado.
-
Se você escolher o Amazon S3, deverá fornecer um nome de bucket de destino e um prefixo de chave de destino. Para parametrizar o prefixo da chave de destino por nome de usuário, insira
${transfer:UserName}para Prefixo da chave de destino. Da mesma foram, para parametrizar o prefixo da chave de destino por data de carregamento, insira${Transfer:UploadDate}para Prefixo da chave de destino. -
Se você escolher o Amazon EFS, deverá fornecer um sistema de arquivos e um caminho de destino.
nota
A opção de armazenamento escolhida aqui deve corresponder ao sistema de armazenamento usado pelo servidor Transfer Family ao qual esse fluxo de trabalho está associado. Caso contrário, você receberá um erro ao tentar executar esse fluxo de trabalho.
-
-
Substituir existente — Se você fizer upload de um arquivo e já existir um arquivo com o mesmo nome de arquivo no destino, o comportamento dependerá da configuração desse parâmetro:
-
Se Substituir existente for selecionado, o arquivo existente será substituído pelo arquivo que está sendo processado.
-
Se a opção Substituir existente não estiver selecionada, nada acontecerá e o processamento do fluxo de trabalho será interrompido.
dica
Se as gravações simultâneas forem executadas no mesmo caminho de arquivo, isso poderá resultar em um comportamento inesperado ao substituir arquivos.
-
A captura de tela a seguir mostra um exemplo das opções que você pode escolher para a etapa de descriptografia do arquivo.
Permissões do IAM para a etapa de descriptografar
Para permitir que uma etapa de descriptografia seja bem-sucedida, certifique-se de que a função de execução do seu fluxo de trabalho contenha as seguintes permissões.
{ "Sid": "ListBucket", "Effect": "Allow", "Action": "s3:ListBucket", "Resource": [ "arn:aws:s3:::amzn-s3-demo-destination-bucket" ] }, { "Sid": "HomeDirObjectAccess", "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:DeleteObjectVersion", "s3:DeleteObject", "s3:GetObjectVersion" ], "Resource": "arn:aws:s3:::amzn-s3-demo-destination-bucket/*" }, { "Sid": "Decrypt", "Effect": "Allow", "Action": [ "secretsmanager:GetSecretValue", ], "Resource": "arn:aws:secretsmanager:region:account-id:secret:aws/transfer/*" }
nota
A permissão s3:ListBucket só é necessária se você não selecionar Substituir existente. Essa permissão verifica seu bucket para ver se já existe um arquivo com o mesmo nome. Se você selecionou Substituir existente, o fluxo de trabalho não precisa verificar o arquivo e pode simplesmente gravá-lo.
Se seus arquivos do Amazon S3 tiverem tags, você precisará adicionar uma ou duas permissões à sua política do IAM.
-
Adicione
s3:GetObjectTaggingpara obter um arquivo Amazon S3 que não tenha versão. -
Adicione
s3:GetObjectVersionTaggingpara obter um arquivo Amazon S3 que tenha versão.
Arquivo de marcação
Para marcar arquivos recebidos para processamento posterior, use uma etapa de marcação. Insira o valor da tag que você gostaria de atribuir aos arquivos recebidos. Atualmente, a operação de marcação é suportada somente se você estiver usando o Amazon S3 para o armazenamento do servidor Transfer Family.
O exemplo a seguir, a etapa de marcação atribui scan_outcome e clean como chave e valor da tag, respectivamente.
Para permitir que uma etapa de marcação seja bem-sucedida, certifique-se de que a função de execução do seu fluxo de trabalho contenha as seguintes permissões.
{ "Sid": "Tag", "Effect": "Allow", "Action": [ "s3:PutObjectTagging", "s3:PutObjectVersionTagging" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket/*" ] }
nota
Se seu fluxo de trabalho contiver uma etapa de marcação executada antes de uma etapa de cópia ou descriptografia, você precisará adicionar uma ou duas permissões à sua política do IAM.
-
Adicione
s3:GetObjectTaggingpara obter um arquivo Amazon S3 que não tenha versão. -
Adicione
s3:GetObjectVersionTaggingpara obter um arquivo Amazon S3 que tenha versão.
Excluir arquivo
Para excluir um arquivo processado de uma etapa anterior do fluxo de trabalho ou excluir o arquivo originalmente carregado, use uma etapa de exclusão de arquivo.
Para permitir que uma etapa de exclusão seja bem-sucedida, certifique-se de que a função de execução do seu fluxo de trabalho contenha as seguintes permissões.
{ "Sid": "Delete", "Effect": "Allow", "Action": [ "s3:DeleteObjectVersion", "s3:DeleteObject" ], "Resource": "arn:aws:secretsmanager:region:account-ID:secret:aws/transfer/*" }
Variáveis nomeadas para fluxos de trabalho
Para etapas de cópia e descriptografia, você pode usar uma variável para executar ações dinamicamente. Atualmente, AWS Transfer Family oferece suporte às seguintes variáveis nomeadas.
-
Use
${transfer:UserName}para copiar ou descriptografar arquivos para um destino com base no usuário que está fazendo o upload dos arquivos. -
Use
${transfer:UploadDate}para copiar ou descriptografar arquivos em um local de destino com base na data atual.
Exemplo para marcar e excluir fluxo de trabalho
O exemplo a seguir ilustra um fluxo de trabalho que marca os arquivos recebidos que precisam ser processados por um aplicativo downstream, como uma plataforma de análise de dados. Depois de marcar o arquivo de entrada, o fluxo de trabalho exclui o arquivo originalmente carregado para economizar nos custos de armazenamento.