SFTP

Descubra mais sobre o componente SFTP e saiba como utilizá-lo na Digibee Integration Platform.

O SFTP se conecta a um serviço que suporte o protocolo SFTP (Secure File Transfer Protocol ou SSH File Transfer) para fazer operações de Upload, Delete, Download, List e Move com arquivos.

Parâmetros

Dê uma olhada nos parâmetros de configuração do componente. Parâmetros suportados por expressões Double Braces estão marcados com (DB).

Parâmetro
Descrição
Valor padrão
Tipo de dado

Operation

Operação a ser executada: Upload, Delete, Download, List ou Move.

Upload

String

Account #1

Conta do tipo Basic ou Private key.

N/A

String

Account #2

Conta do tipo Basic ou Private key.

N/A

String

Host (DB)

Host ou endereço IP a ser usado na conexão.

ftp.server.com.br

String

Username (DB)

Usado apenas quando o tipo de conta for Private key. Se as contas Basic e Private Key estiverem definidas, esse parâmetro será ignorado devido à presença do username da conta Basic.

User

String

Port (DB)

Número da porta. Geralmente, assume valor 22

22

Inteiro

Server Host Key

Especifica quaisquer algoritmos adicionais a serem suportados para a configuração de server host key. Cada algoritmo deve ser configurado separadamente.

N/A

String

Public Key Algorithms

Especifica quaisquer algoritmos adicionais a serem suportados para a configuração de algoritmos public key. Cada algoritmo deve ser configurado separadamente.

N/A

String

KEX Algorithms

Especifica quaisquer algoritmos adicionais a serem suportados para a configuração de algoritmos KEX (key exchange). Cada algoritmo deve ser configurado separadamente.

N/A

String

File Name (DB)

Nome do arquivo ou caminho completo (ex: tmp/processed/file.txt) para o arquivo.

local-test.pdf

String

Remote File Name (DB)

Nome do arquivo ou caminho completo (ex: tmp/processed/file.txt) para o arquivo remoto.

test.pdf

String

Remote Directory (DB)

Diretório remoto base, pode ser relativo (ex:. pub/tmp) ou absoluto (ex: /root/pub).

Folder

String

Connection Timeout

Tempo limite de expiração da conexão com o servidor (em milissegundos).

30000

Inteiro

Overwrite File On Upload

Se a opção estiver ativada, arquivos com nomes confiltantes serão substituídos ao fazer um upload.

True

Booleano

Fail On Error

Se a opção estiver ativada, a execução do pipeline com erro será interrompida; do contrário, a execução do pipeline continua, mas o resultado vai mostrar um valor falso para a propriedade "success".

False

Booleano

Proxy Enabled

Se a opção estiver ativada, você poderá configurar um proxy para estabelecer a conexão com o serviço de SFTP.

False

Booleano

Host (Proxy) (DB)

Host do proxy. Disponível apenas se Proxy Enabled estiver ativado.

N/A

String

Port (Proxy) (DB)

Porta do proxy.. Disponível apenas se Proxy Enabled estiver ativado. O valor deve ser maior ou igual a 80.

N/A

Inteiro

Use Dynamic Account

Quando a opção estiver ativada, o componente irá usar a conta dinamicamente. Quando estiver desativada, a conta será usada estaticamente.

False

Booleano

Account Name #1

Nome da conta a ser definida. O nome da conta deve ser gerado dinamicamente através do componente Store Account.

N/A

String

Account Name #2

Nome da conta a ser definida. O nome da conta deve ser gerado dinamicamente através do componente Store Account.

N/A

String

Scoped

Quando a opção estiver ativada, a conta armazenada é isolada para outro sub-processo. Nesse caso, os sub-processos verão sua própria versão dos dados da conta armazenada.

Para saber mais sobre a funcionalidade Scoped, leia a documentação de Suporte a credenciais dinâmicas.

False

Booleano

Informações importantes:

  • O conector SFTP usa uma biblioteca de implementação que desativou por padrão algoritmos específicos que foram considerados inseguros. Os parâmetros Server Host Key, Public Key Algorithms e KEX Algorithms estão disponíveis para quando for necessário ativar estes algoritmos para estabelecer uma conexão SFTP. Embora seja possível usar essa configuração, não é recomendável usar algoritmos inseguros.

  • Atualmente, os parâmetros Use Dynamic Account, Account Name e Scoped podem ser usados apenas no Pipeline Engine v2 e estão disponíveis em fase Beta Restrito. Para saber mais, leia o artigo Progama Beta.

Fluxo de mensagens

Saída

Ao executar um componente SFTP utilizando as operações Download, Upload ou Move, a seguinte estrutura de JSON será gerada:

{
    "fileName": "picture.png",
    "remoteFileName": "imap-console-client.png",
    "remoteDirectory": "pub/example",
    "success": "true"
}
  • fileName: nome do arquivo local.

  • remoteFileName: caminho do arquivo remoto ou caminho relativo do arquivo remoto.

  • remoteDirectory: caminho do diretório remoto base (relativo ou absoluto).

  • success: "true" se a operação foi bem sucedida, "false" caso contrário.

Ao executar um componente SFTP utilizando a operação List, a seguinte estrutura de JSON será gerada:

{
   "remoteDirectory":"pub/example",
   "success":true,
   "content":[
      {
         "file":"file.txt",
         "isDirectory":false,
         "size":1024,
         "permission":"-rwxrwxrwx",
         "flag":14,
         "accessed":"Sat Jan 14 09:21:05 UTC 2023",
         "modified":"Sat Jan 14 09:21:05 UTC 2023"
      }
   ]
}
  • remoteDirectory: caminho do diretório remoto base (relativo ou absoluto).

  • success: "true" se a operação foi bem sucedida, "false" caso contrário.

  • content: a lista de arquivos no remoteDirectory.

  • file: nome do arquivo.

  • size: tamanho do arquivo.

  • isDirectory: se o objeto retornado é um diretório, será exibido “true”; se for um arquivo, será exibido “false”.

  • permissions: uma string contendo o tipo de permissão dada ao objeto.

  • accessed: data do último acesso.

  • modified: data da última modificação.

  • flag: retorna flags, indicando quais atributos estão presentes.

A manipulação de arquivos dentro de um pipeline ocorre de forma protegida. Os arquivos ficam disponíveis em diretório temporário que somente o pipeline sendo executado tem acesso.

Para entender melhor o fluxo das mensagens na Digibee Integration Platform, leia a documentação sobre Processamento de mensagens.

Atualizado