【问题标题】:How to upload a file to Azure Storage with WinSCP (SFTP)?如何使用 WinSCP (SFTP) 将文件上传到 Azure 存储?
【发布时间】:2016-01-27 23:34:28
【问题描述】:

我有一个使用 WinSCP 的 C# 服务,它可以可靠地将文件上传到任何 SFTP 服务器。我想用它连接到 MS Azure 存储并使用相同的 SFTP 协议上传文件。 请注意,我不希望使用任何其他协议(即:FTP、FTPS、HTTPS 等),也不希望从 Azure 存储 [out] SFTP 文件。 有很多示例说明如何在从 Azure 存储 SFTP [out] 时使用 WinSCP,但没有一个涵盖如何 SFTP [in]。

我搜索了 Stack Overflow 知识库、Azure 帮助文档 (https://azure.microsoft.com/en-us/documentation/articles/storage-dotnet-how-to-use-blobs/) 以及 WinSCP 文档 (http://winscp.net/eng/docs/guide_microsoft_azure_webjob_sftp 等)。

任何帮助表示赞赏。谢谢。

更新:2016-01-29 所以......据我所知,无法使用 SFTP 协议将文件上传到 Azure 存储。 MS Azure 不支持此功能。有人可以帮我确认一下吗?

更新:2016-02-01 此处类似的 Q/A (Facading Azure storage blob with sFTP service) 没有回答我的问题,因为: a)所有答案都在建议使用 VM 或其他替代品的理论解决方法 b)它没有为我的问题提供明确的答案

这应该不难回答。如果不支持 SFTP,那么答案是:“Azure 不支持 SFTP”强>。如果支持 SFTP 协议,请提供有关设置、方法和/或 C# 示例的更多详细信息。我的问题是故意明确定义的,因此有相同需求的其他人可以快速找到答案,而不会浪费他们的时间。

【问题讨论】:

  • 你看过这个article from WinSCP吗?
  • 我做了,据我了解,它处理 SFTP 输出场景。他们有一个名为:“将网站备份到远程 SFTP 服务器的示例 C# 代码”的示例。我需要将文件导入 Azure 存储而不是输出。谢谢。
  • 您是否也在该页面上查看过link?它提供了getput 示例,因此您可以根据运行作业的位置使用其中任何一个..
  • 指南SFTP/FTPS file transfers in Microsoft Azure WebJob中的所有示例都显示上传。正是您想要的。
  • @MartinPrikryl - 您能否向我提供您所指的 WinSCP 页面部分,该部分显示 SFTP 上传到 Azure 存储。

标签: c# azure-storage sftp winscp


【解决方案1】:

从您的 cmets 看来,您似乎已经获得了 SFTP 访问信息。因此,您的问题与 Azure 无关。您所要求的只是如何上传到 SFTP。为此,请使用 WinSCP 站点上的任何 SFTP 上传示例。例如,非常基本的示例Uploading a single file。只需使用客户提供的访问信息即可。


不过,我不确定是否有对 Azure 存储的 SFTP 访问。但这是您必须与客户讨论的问题。他们坚持使用 SFTP。

有关远程访问 Azure 存储的讨论,请参见示例:

这些都没有提到任何 SFTP。实际上 Azure 服务一般不支持 SFTP。 SFTP 通常是 *nix 的东西。 Azure 服务运行 Windows。 Windows 中没有 SFTP (yet)。 Windows 支持 FTPS。但 Azure Store 似乎也不支持。

也许有一些误解。也许它不是 Azure Storage,也许它只是一个用于存储文件的 Azure Linux 盒子。或者他们的意思是 FTPS,而不是 SFTP。他们可能有一个带有 FTPS 服务器的 Azure VM 来访问 Azure 存储。

【讨论】:

  • 页。 - 感谢您的回复。我不能接受它,因为它不准确。如果您删除第一段(从您的 cmets...)和最后一段(也许...),我将接受作为答案。谢谢。
  • 对不起,但它与您的问题一样准确。我仍然不确定您实际要求的是什么。所以我涵盖了所有的可能性。你现在能让你的问题更清楚吗?
  • 页。 - 问题重新编辑。顺便说一句,我的 cmets 不建议您在第一段和最后一段中写的任何内容。只有中间部分似乎是正确的。谢谢。
  • “我获得了端口 22 用于将数据传输到 Azure 存储”
  • ..这不是全部真相,我得到了 C# WinSCP 服务、端口 22 和 SFTP 协议要求。如果端口 22 是唯一的要求,它将为我提供更多选择,如何在不使用 SFTP 的情况下通过端口 22 获取数据。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2022-01-18
  • 2018-04-08
  • 1970-01-01
  • 2020-02-08
  • 2019-02-11
  • 1970-01-01
  • 2021-12-19
相关资源
最近更新 更多