passwords - 如何改进或删除 sftp 硬码密码骆驼码
问题描述
我有以下代码: -
public class FtpRouteBuilder extends RouteBuilder {
@Override
public void configure() throws Exception {
try{
from("file:c:/temp/input/")
.streamCaching()
.to("sftp://sftpuser@192.168.10.54:/sftpuser/?password=dev&passiveMode=true");
}catch (Exception ex){
System.out.printf("ex: "+ex.getMessage());
}
}
}
我在代码中有 sftp 密码“dev”。那是丑陋的。如何删除它并以更好的方式设置它?
解决方案
查看 sftp 服务器的文档,了解如何使用 SSH 密钥设置访问权限。如果您还没有密钥对(例如使用 ssh-keygen),则需要生成一个密钥对,然后将公钥放在 sftp 服务器上。不要使用密码短语。如果你这样做,你必须将它添加到骆驼路线,所以它看起来一样丑陋。
检查您是否可以使用您的私钥与 ftp 客户端进行传输。即在尝试将它们与骆驼一起使用之前测试它们。
更改您的路线以使用私钥
from("file:c:/temp/input/") .streamCaching() .to("sftp://sftpuser@192.168.10.54:/sftpuser/?privateKeyFile=path-to-private-key-file&passiveMode=true");
推荐阅读
- math - Groovy 在处理非常大的数字时抛出 Numberformatexception
- scala - 运行 docker:publishLocal 时如何避免编写 pom?
- firebase - 在 Google Firestore 规则中访问 Cookie
- python - python pandas - 使用 WECO 规则对 groupby 进行评分并输出 groupby 分数
- oauth-2.0 - 无需用户登录的 Javascript 客户端的 IdentityServer4 隐式流程
- javascript - TypeError:无法读取未定义的属性“displayName”
- java - 在JTextPane java swing中填充直线矩形后无法与视图同步
- html - Html 3d 视频播放器
- json - Angular 5 - 获取对象时出错
- html - 的价值