在内存/嵌入式SFTP服务器中,用于使用Java中的私钥身份验证进行测试

阿尼鲁德(Anirudh)

方案是,我需要为执行SFTP文件传输的应用程序编写测试,并且需要具有私钥身份验证实现的内存/嵌入式SFTP服务器,以便可以测试文件传输与嵌入式/内存服务器正常运行。私钥(.pem)文件身份验证。

正如本次SO问题中所讨论的,我已经通过互联网的勇气直奔互联网,最接近的是Apache Mina Server。

目前,我正在使用用户名和密码身份验证,如下所示:

SshServer sshd = SshServer.setUpDefaultServer();
sshd.setPort(22999);

sshd.setKeyPairProvider(new SimpleGeneratorHostKeyProvider());
sshd.setPasswordAuthenticator(new PasswordAuthenticator() {

    public boolean authenticate(String username, String password,
                                ServerSession session) {
        // TODO Auto-generated method stub
        return true;
    }
});

我试图找到一种实现私钥身份验证的方法,但似乎只有一个身份验证器,但这是一个公共密钥身份验证器,如下所示:

public void setPublickeyAuthenticator(PublickeyAuthenticator publickeyAuthenticator) {
    this.publickeyAuthenticator = publickeyAuthenticator;
}

有没有一种方法可以用Apache Mina来实现私钥身份验证器?还是如果不可能的话,我可以在测试场景中使用其他模拟SFTP服务器吗?

马丁·普里克里(Martin Prikryl)

您实际上是在寻找公用密钥验证者

客户端/用户使用其公钥进行身份验证。服务器永远不会看到私钥。


因此,您实现PublickeyAuthenticator接口以检查方法PublicKey key参数是否与您在客户端中用于认证的密钥对的公共部分匹配。authenticate

您可以从使用类似OpenSSH的配置文件的AuthorizedKeysAuthenticator实现开始.ssh/authorized_keys

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

是否有可以在Java进程中嵌入式运行的MQ服务器?

Swing应用程序中嵌入式HTTP服务器的Java类

Java中的嵌入式NIO http客户端/服务器

如何在Go中创建使用TLS客户端身份验证的测试服务器?

Java中通过套接字进行客户端服务器身份验证

SFTP服务器多用户身份验证

Django中的嵌入式身份验证+ LDAP用户验证。如何?

使用Python Paramiko对SFTP服务器进行两因素(按键和键盘交互)身份验证

在docusign中使用jwt身份验证进行嵌入式签名

嵌入式Flutter应用程序和本机Android中的Firebase身份验证

无法使用smtp.office365.com中的用户名在SMTP服务器上进行身份验证

使用服务帐户进行GCP服务器到服务器的身份验证

无法使用私钥和密码对SFTP进行身份验证

将HTTP基本身份验证应用于嵌入式Jetty中的jax ws(HttpSpiContextHandler)

无法使用Windows身份验证向SMTP服务器进行身份验证

嵌入式Java HTTPS服务器进行集成测试

我可以在WSO2身份服务器中为嵌入式LDAP启用SSL端口吗?

如何使用android中的登录凭据对我的服务器进行身份验证?

通过带有密码的跳转服务器进行scp,使用私钥对目标进行身份验证

使用buildroot构建的嵌入式apache Web服务器中的PHP

使用Google身份验证在SSH服务器上进行两因素身份验证

Indy TCP服务器中的用户身份验证

在所有虚拟服务器中对用户进行身份验证

嵌入式mongo,不带端口(完全在内存中)

如何使用服务器密钥在Google Spreadsheet Api V4中进行身份验证

Java-SSL-使用gmail的SMTP服务器进行身份验证

使用 Mithril 进行 Firebase 身份验证以在无服务器 SPA 中登录/注册

MaxScale 尝试对所有服务器中的用户进行身份验证

无法为 Kafka 启动嵌入式服务器以进行 Junit 测试