Spring Cloud Config Server 给出 IllegalArgumentException: Illegal base64 character 2d Error

问题描述 投票:0回答:1

我正在尝试使用 application.properties 文件中的 ssh 连接到 bitbucket 存储库。

[email protected]:7999/properties.git
spring.cloud.config.server.git.ignoreLocalSshSettings=true
spring.cloud.config.server.git.hostKey=prod-cvs2.test.com
spring.cloud.config.server.git.hostKeyAlgorithm=ssh-rsa
spring.cloud.config.server.git.strictHostKeyChecking=false
spring.cloud.config.server.git.passphrase=Secret123

spring.cloud.config.server.git.privateKey=-----BEGIN RSA PRIVATE KEY-----\n\
Proc-Type: 4,ENCRYPTED\n\
DEK-Info: AES-128-CBC,947ABEEB0FE4132D7074662CE7FF5068\n\
\n\
THE_KEY\n\
-----END RSA PRIVATE KEY-----

spring.cloud.config.server.git.default-label=master

配置服务器启动成功。但是,当我尝试从邮递员那里读取属性时,出现以下错误。

Caused by: org.apache.sshd.common.SshException: DefaultConnectFuture[[email protected]/162.134.121.63:22]: Failed (IllegalArgumentException) to execute: Illegal base64 character 2d
    at org.apache.sshd.common.future.AbstractSshFuture.lambda$verifyResult$1(AbstractSshFuture.java:131) ~[sshd-osgi-2.7.0.jar:2.7.0]
    at org.apache.sshd.common.future.AbstractSshFuture.formatExceptionMessage(AbstractSshFuture.java:185) ~[sshd-osgi-2.7.0.jar:2.7.0]
    at org.apache.sshd.common.future.AbstractSshFuture.verifyResult(AbstractSshFuture.java:130) ~[sshd-osgi-2.7.0.jar:2.7.0]
    at org.apache.sshd.client.future.DefaultConnectFuture.verify(DefaultConnectFuture.java:42) ~[sshd-osgi-2.7.0.jar:2.7.0]
    at org.apache.sshd.client.future.DefaultConnectFuture.verify(DefaultConnectFuture.java:34) ~[sshd-osgi-2.7.0.jar:2.7.0]
    at org.eclipse.jgit.transport.sshd.SshdSession.connect(SshdSession.java:191) ~[org.eclipse.jgit.ssh.apache-5.13.1.202206130422-r.jar:5.13.1.202206130422-r]
    at org.eclipse.jgit.transport.sshd.SshdSession.connect(SshdSession.java:142) ~[org.eclipse.jgit.ssh.apache-5.13.1.202206130422-r.jar:5.13.1.202206130422-r]
    at org.eclipse.jgit.transport.sshd.SshdSession.connect(SshdSession.java:99) ~[org.eclipse.jgit.ssh.apache-5.13.1.202206130422-r.jar:5.13.1.202206130422-r]
    at org.eclipse.jgit.transport.sshd.SshdSessionFactory.getSession(SshdSessionFactory.java:235) ~[org.eclipse.jgit.ssh.apache-5.13.1.202206130422-r.jar:5.13.1.202206130422-r]
    ... 136 common frames omitted
Caused by: java.lang.IllegalArgumentException: Illegal base64 character 2d
    at java.base/java.util.Base64$Decoder.decode0(Base64.java:743) ~[na:na]
    at java.base/java.util.Base64$Decoder.decode(Base64.java:535) ~[na:na]
    at java.base/java.util.Base64$Decoder.decode(Base64.java:558) ~[na:na]
    at org.apache.sshd.common.config.keys.PublicKeyEntryDataResolver.decodeEntryKeyData(PublicKeyEntryDataResolver.java:53) ~[sshd-osgi-2.7.0.jar:2.7.0]
    at org.apache.sshd.common.config.keys.PublicKeyEntry.parsePublicKeyEntry(PublicKeyEntry.java:408) ~[sshd-osgi-2.7.0.jar:2.7.0]
    at org.apache.sshd.common.config.keys.AuthorizedKeyEntry.parseAuthorizedKeyEntry(AuthorizedKeyEntry.java:318) ~[sshd-osgi-2.7.0.jar:2.7.0]
    at org.apache.sshd.common.config.keys.AuthorizedKeyEntry.parseAuthorizedKeyEntry(AuthorizedKeyEntry.java:273) ~[sshd-osgi-2.7.0.jar:2.7.0]
    at org.springframework.cloud.config.server.ssh.PropertyBasedSshSessionFactory$2.getHostKey(PropertyBasedSshSessionFactory.java:151) ~[spring-cloud-config-server-3.1.5.jar:3.1.5]
    at org.springframework.cloud.config.server.ssh.PropertyBasedSshSessionFactory$2.lookup(PropertyBasedSshSessionFactory.java:122) ~[spring-cloud-config-server-3.1.5.jar:3.1.5]
    at org.eclipse.jgit.internal.transport.sshd.JGitServerKeyVerifier.lookup(JGitServerKeyVerifier.java:72) ~[org.eclipse.jgit.ssh.apache-5.13.1.202206130422-r.jar:5.13.1.202206130422-r]
    at org.eclipse.jgit.internal.transport.sshd.JGitClientSession.resolveAvailableSignaturesProposal(JGitClientSession.java:275) ~[org.eclipse.jgit.ssh.apache-5.13.1.202206130422-r.jar:5.13.1.202206130422-r]
    at org.apache.sshd.common.session.helpers.AbstractSession.resolveAvailableSignaturesProposal(AbstractSession.java:2356) ~[sshd-osgi-2.7.0.jar:2.7.0]

有人可以指导我我缺少什么吗?谢谢!

java spring git spring-boot spring-cloud
1个回答
0
投票

你觉得 \ 或 \ 没有正确放置在键中?

检查是否,如在这里,你可以使用

spring.cloud.config.server.git.private-key= \
-----BEGIN RSA PRIVATE KEY-----\n\
your_key_here_your_key_here_you\n\
your_key_here_your_key_here_you\n\
your_key_here_your_key_here_you\n\
your_key_here_your_key_here_you\n\
your_key_here_your_key_here_you\n\
-----END RSA PRIVATE KEY-----\n

我认为你不应该包括

Proc-Type: 4,ENCRYPTED\n\
DEK-Info: AES-128-CBC,947ABEEB0FE4132D7074662CE7FF5068\n\
\n\
THE_KEY\n\
© www.soinside.com 2019 - 2024. All rights reserved.