Faz o upload de um arquivo via protocolo SFTP para o Totvs Application Server, utilizando uma autenticação por certificado (em formato PEM) podendo ser carregada pelo o AppServer através de uma configuração no INI conforme o exemplo abaixo:
[SFTP] PrivateKey=C:/Keys/MyUser/id_rsa PublicKey=C:/Keys/MyUser/id_rsa.pub
Caso o certificado, tenha sido gerada com uma senha, é necessário configurá-la no INI através da chave certpassword conforme o exemplo:
[SFTP] PrivateKey=C:/Keys/MyUser/id_rsa PublicKey=C:/Keys/MyUser/id_rsa.pub
Certpassword=minhaSenha123
nStatus := SFTPUpld2( < sFileName >, < sRemotePath >, < sServer >, < sUser > , [ @sError ] ) |
Nome | Tipo | Descrição | Obrigatório | Referência |
|---|---|---|---|---|
sFileName | caractere | Caminho completo do arquivo a ser transferido do seu computador | X | |
sRemotePath | caractere | Caminho completo do arquivo a ser salvo no servidor remoto | X | |
sServer | caractere | Endereço do servidor remoto | X | |
sUser | caractere | Nome do usuário | X | |
| sError | caractere | Obtém por referência uma string contendo detalhes em caso de falha na execução da função | X |
Nome | Tipo | Descrição |
|---|---|---|
numérico | 0 | Sucesso na operação |
| numérico | -1111 | Caminho de arquivo inválido |
| numérico | -1112 | Falha ao abrir o arquivo |
| numérico | 67 | Servidor remoto rejeitou a conexão |
| numérico | 79 | Erro na camada SSH |
| numérico | 82 | O servidor rejeitou a chave pública fornecida |
| numérico | 83 | Chave de host inválida |
| numérico | 84 | Nome de usuário ou senha inválidos |
| numérico | 85 | Falha ao inicializar o SSH |
| numérico | 86 | Erro ao ler o arquivo local para upload SFTP |
| numérico | 87 | Erro SSH geral |
| numérico | 88 | Falha ao carregar uma biblioteca libcurve necessária |
| numérico | 89 | Erro com o arquivo de hosts conhecidos |
| numérico | 90 | Erro do agente SSH |
| numérico | 91 | A chave pública do host remoto não foi encontrada |
| numérico | 92 | A conexão com o host remoto foi negada |
| numérico | 93 | Ocorreu um erro de protocolo SSH |
| numérico | 94 | Caminho de arquivo inválido para operação SFTP |
| numérico | 96 | Autoridade de certificação desconhecida no SSH |
| numérico | 101 | O acesso ao recurso remoto foi negado |
| numérico | 102 | A chave pública fornecida para autenticação não foi verificada |
Exemplo de implementação do upload de arquivo utilizando autenticação por chave PEM existente.
User Function uploadSFTPexemplo2()
Local nStatus , cError := ''
nStatus := SFTPUpld2("meuarquivo.txt", "/home/user/meufile.txt", "cloud1.dominio.com", "user", @cError)
if (nStatus != 0)
Conout("Falha ao transferir arquivo : "+cError)
endif
Return
|
Função disponível, na linguagem TLPP, para build superior a 19.3.1.7.
IMPORTANTE: Utilizar preferencialmente na linguagem TLPP pois o suporte desta função no AdvPL está sendo descontinuado.