正如标题提到的,Spring 集成 SFTP 可以使用公钥登录吗?在 Spring 集成文档中,它提供了像这样的私有配置
<beans:bean id="sftpSessionFactory"
class="org.springframework.integration.sftp.session.DefaultSftpSessionFactory">
<beans:property name="host" value="localhost"/>
<beans:property name="privateKey" value="classpath:META-INF/keys/sftpTest"/>
<beans:property name="privateKeyPassphrase" value="springIntegration"/>
<beans:property name="port" value="22"/>
<beans:property name="user" value="kermit"/>
不,它不是那样工作的 - 阅读公钥/私钥身份验证。
服务器拥有公钥,您永远不会共享私钥。
此配置并不意味着私钥被"发送"到服务器,它只是由本地握手使用,以确保允许具有此私钥的客户端访问服务器(因为服务器具有相应的公钥)。