Azure Logi c Apps / Data Factory, получение файлов с использованием FTPS - PullRequest
1 голос
/ 03 марта 2020

Я пытаюсь получить файл с ftp-сервера через ftps. Этот пост обновляется новыми результатами испытаний и знаниями из ответов и моих собственных исследований. Ftp-сервер поддерживает ftps неявный режим SSL / TLS на порту 990 и неявный режим на порту 21. Я попытался получить файл из приложений Logi c и фабрики данных, оба безуспешно.

Тестирование неявного режима. Порт 990, Включить SSL, двоичный транспорт истина / ложь пробовал оба (Logi c App), проверка сертификата сервера отключена, выдает эту ошибку:

Ошибка фабрики данных:

"Не удалось подключиться к серверу FTP. ADF не поддерживает режим неявного шифрования SSL / TLS. Убедитесь, что вы подключаетесь с помощью режима явного шифрования. Основное соединение было закрыто: сервер совершил нарушение протокола. "

Logi c apps error:

{
  "error": {
    "code": 502,
    "source": "logic-apis-northeurope.azure-apim.net",
    "clientRequestId": "c935a165-c725-4d26-824d-d1df3c82a65c",
    "message": "BadGateway",
    "innerError": {
      "status": 502,
      "message": "An FTP protocol violation was detected. This could be caused by an implicit TLS/SSL configuration of the FTP server that is not supported. Please try explicit TLS/SSL.\r\nclientRequestId: c935a165-c725-4d26-824d-d1df3c82a65c",
      "error": {
        "message": "An FTP protocol violation was detected. This could be caused by an implicit TLS/SSL configuration of the FTP server that is not supported. Please try explicit TLS/SSL."
      },
      "source": "ftp-ne.azconn-ne.p.azurewebsites.net"
    }
  }
}

Как показано в ответе ниже, либо фабрика данных, ни приложения Logig неявно поддерживают режим.

Тестирование явного режима. Порт 21, Включить SSL, двоичный транспортный истина / ложь пробовал оба (Logi c App), Проверка сертификата сервера отключена, выдает эту ошибку:

Ошибка фабрики данных:

"Не удалось подключиться на FTP-сервер. Убедитесь, что предоставленная информация о сервере верна, и повторите попытку. Удаленный сервер возвратил ошибку: 150 Открытие канала данных для списка каталогов «/». Проверка подлинности не удалась, поскольку удаленная сторона закрыла транспортный поток »

Logi c Ошибка приложения:

{
  "error": {
    "code": 502,
    "source": "logic-apis-northeurope.azure-apim.net",
    "clientRequestId": "61a1cc3e-74f3-40ac-a9f3-79a1409d81cc",
    "message": "The response is not in a JSON format.",
    "innerError": "The specified CGI application encountered an error and the server terminated the process."
  }
}

Проверка с использованием клиента FileZilla.

И неявный порт (990), и явный режим (порт 21) работают нормально. Мой оригинальный вопрос: есть ли способ получить FTP-соединение в фабрике данных или приложениях Logi c для работы в неявном режиме SSL / TLS? В качестве ответа ниже говорится. Фабрика приложений и данных Logi c не поддерживает неявный режим.

Обходным путем является создание приложения-функции с кодом c#, который получает файл через неявный режим. Вызовите приложение Function из приложений logi c и / или фабрики данных.

Но почему не работает явный режим? Любые советы?

1 Ответ

1 голос
/ 04 марта 2020

К сожалению, ни Azure Data Factory, ни Azure Logi c Приложения не поддерживают неявную настройку TLS / SSL. Это известное ограничение.

Azure ограничение фабрики данных : коннектор ADF FTP поддерживает доступ к FTP-серверу без шифрования или с явным шифрованием SSL / TLS; он не поддерживает неявное шифрование SSL / TLS. (Ссылка: Копирование данных с FTP-сервера с использованием Azure Фабрика данных )

Azure Logi c Ограничение приложений : FTP-соединитель Azure Logi c Apps поддерживает только явный FTP через SSL ( FTPS) и не совместим с неявным FTPS (Ref: Azure Logi c Ограничения коннектора FTP для приложений )

...