我正在devise一个Windows客户端应用程序,将从SFTP服务器检索文件。 我想避免强迫用户在客户端应用程序上提供凭据 – 而是将他们的Windows凭据提供给服务器,然后服务器将进行身份validation并提供对相应资源的访问。
看来市场上的SFTP服务器将允许证书authentication或密码authentication。 如果提供证书,则不需要密码。 否则,用户将需要input密码。
就我所知,使用证书authentication的问题是,我们需要在应用程序本身内部pipe理用户(创build,删除等),而不是依赖Active Directory。 这增加了我们已经复杂的环境的额外pipe理复杂性。
有谁知道:
A)将满足我的要求的SFTP服务器解决scheme
要么
B)我可以使用另一种方法来集中AD中的用户pipe理,同时允许SFTP服务器上的SSO?
如果您想在Linux机器上运行OpenSSH,您可以将OpenSSH与Kerberos集成: http : //port25.technet.com/archive/2008/06/06/technical-analysis-openssh-on-linux-using-windows-kerberos -用于-authentication.aspx
我没有find关于Kerberos在Windows上通过OpenSSH集成的好文档(通过cygwin)。 我很乐意听到有人这样做。
虽然我不喜欢推荐它,但Ipswitch的WS-FTP服务器完全按照你的要求(在Windows机器上)。 它已经好多了,但用户界面还是相当差。
你也可以去Linux的路线,但我可能会使用LikeWise开放与rssh结合,以方便pipe理。
VanDyke Software公司的VShell是这样做的。
回答您的问题答:您可以尝试使用Syncplify.me Server!(一个支持PKI和Active Directory的Windows SFTP服务器(取决于您的需要)),因此您可以轻松地将auth过程集成到客户端软件中,用户input密码。
回答你的问题B:作为Syncplify.me服务器! 支持活动目录组,用户以及“全部”虚拟用户,通过利用这些function(无需每次在SFTP服务器上创build/编辑用户configuration文件),都可以极大地简化用户pipe理。
链接: http : //www.syncplify.me/syncplifyme-server.html
老问题,但是…我们已经使用Windows服务器上运行的CrushFTP。 它也可以在其他平台上运行,而且没有客户需要CrushFTP
许多function用于安全访问并与AD集成。 许多其他伟大的function,低成本和很大的支持。 还没有尝试过最新的,但早期版本已经很好。 即使在审判期间,支持也是例外。 值得一看
允许客户端应用程序使用Windows域环境中的现有login凭据对SFTP服务器进行身份validation,这最终意味着您使用的是Kerberos。 您的SFTP服务器必须具有Kerberos支持,并且在与您的客户端相同的域(或受信任的域)成员的计算机上运行。 您的SFTP客户端也必须具有Kerberos支持。 我不知道你是如何完成你的应用程序中的客户端连接,但你可能想检查。
有一个关于什么是在Windows上使用的好的SSH服务器的问题? 。 由于SFTP只是SSH的一个function,所以在这个问题上的大部分答案都是一个很好的开始。 我个人的偏好是Bitvise SSH Server 。 这是一个Windows本机SSH服务器,而不是OpenSSH的一些变种已被黑客入侵在Windows上工作。 与大多数其他付费选项相比,它相对便宜。