WebSphere和Spring集成的SSH配置



我在WebSphere上托管了一个Web应用程序(Spring MDP),它使用SFTP在3个不同的服务器(Unix盒子)上侦听消息并生成一些文本文件。我们使用Spring集成(DefaultSftpSessionFactory)来建立SFTP连接,并使用目标主机的用户凭据(用户名/密码)将文件写入不同的服务器。

现在,根据新的要求,我们必须停止使用用户名/密码连接到服务器,而是使用SSH密钥对。我们得到了一个指示,我们必须使用"wasadm"用户的SSH密钥来建立连接。以下是我迄今为止所做的:

  1. 从WAS管理团队获得"wasadm"用户的公钥
  2. 已将公钥安装到不同服务器的授权密钥中

现在,我的问题是-我如何配置我的应用程序,使其获取用于连接到目标盒的"wasadm"SSH私钥。(私钥位于"/home/wasadmin/.ssh"位置。EAR应用程序是否可以访问此目录?如果可以,我如何配置DefaultSftpSessionFactory以使用此私钥进行身份验证)。

非常感谢任何指示和指导。

非常感谢。

-Ashish

sftp示例展示了如何做到这一点。。。https://github.com/garyrussell/spring-integration-samples/tree/master/basic/sftp

您在会话工厂上配置它。。。

<bean id="sftpSessionFactory" class="org.springframework.integration.sftp.session.DefaultSftpSessionFactory">
<property name="host" value="${host}"/>
<property name="privateKey" value="classpath:path-to-key/sftp_rsa"/>
<property name="privateKeyPassphrase" value="${passphrase}"/>
<property name="port" value="22"/>
<property name="user" value="${user}"/>
</bean>
<int-sftp:outbound-channel-adapter id="sftpOutboundAdapter"
session-factory="sftpSessionFactory"
...

最新更新