Dray: 支持多数据存储后端的云原生SFTP服务器

需积分: 10 0 下载量 174 浏览量 更新于2024-12-02 收藏 49KB ZIP 举报
资源摘要信息:"Dray是一个云原生的SFTP服务器,它支持从Amazon S3这样的对象存储服务开始,并且设计上可以支持多个不同的数据存储后端。Dray的目标是简化SFTP集成的工作,让开发人员能够将重点放在产品差异化的开发上,而不是处理SFTP集成的繁重工作。 在公司内部,许多企业应用程序如ADP、SAP和Workday等,作为数据真实性的来源,它们提供了自动的SFTP上传功能,以便与其他应用程序同步数据。这意味着,与企业数据进行交互的应用程序需要支持SFTP协议。然而,搭建和维护SFTP服务器通常是一个复杂且耗费资源的过程,尤其是对于那些需要高度安全性和可靠性的企业环境。Dray旨在解决这一问题,通过提供一个易于使用且可扩展的解决方案。 项目的开发语言是Rust。Rust是一种注重安全、并发和性能的系统编程语言,非常适合用于开发这类底层服务器软件。项目的标签显示了它与Rust、S3、SFTP协议和对象存储紧密相关。 目前,Dray项目仍然处于开发中,还未达到最小可用产品(MVP)阶段。根据文件描述,项目的工作还在进行中,尚未正式对外开放使用。项目的MVP路线图包含了以下几个关键的功能点: 1. 反序列化和序列化SSH文件传输协议版本3草案2:这指的是实现SSH协议的文件传输标准,确保Dray能够正确地处理SSH协议下的文件传输请求。 2. 接受SSH连接:Dray需要能够建立和接受SSH连接,这是SFTP服务的基本能力。 3. 根据S3中存储的授权密钥验证SSH密钥:这表明Dray将使用S3存储和管理用户权限信息,实现基于S3授权机制的SSH密钥验证。 4. SFTP子系统初始化:SFTP子系统是SFTP服务的核心,负责管理文件传输、权限控制等任务。 5. 列表目录(仅适用于S3兼容存储):这表明Dray将能够列出存储在S3兼容存储中的目录和文件,这是文件管理操作的基础。 6. 创建目录:能够创建新目录是文件系统管理的基本功能,对于任何文件传输服务来说都是必不可少的。 项目的开发状态虽然还未完成,但其目标和功能已经相对明确,开发者社区可以期待其在实现MVP后带来的便利。由于项目文件名称为'dray-main',我们可以推断这可能是主项目代码库的名称。随着项目的推进,未来Dray有望成为一种帮助企业和开发人员高效、安全地传输数据的强大工具。"