首页 > 解决方案 > 使用 SSH 密钥访问 GIT 存储库的 Spring 云配置服务器需要进行身份验证,但尚未注册 CredentialsProvider

问题描述

我正在尝试设置 Spring 云配置服务器,并希望使用 SSH 密钥访问 GIT 存储库。我已经使用命令创建了 SSH 公钥和私钥ssh-keygen -m PEM -t rsa -b 4096 -C "PIQ-Config",并在 GIT SSH 公钥上添加了密钥。

GIT repo 上的 SSH 密钥配置

我可以使用 ssh git clone 命令从命令行 git clone。

以下是 STS 中的配置

server:
        git:
          uri: https://visualstudio.com/p2020/_git/myrepo
          ignoreLocalSshSettings: true
          hostKey: mypublickey
          hostKeyAlgorithm: ssh-rsa
          privateKey: |
                      -----BEGIN RSA PRIVATE KEY-----
                      -----END RSA PRIVATE KEY-----
                  

我的服务器正常启动,没有任何错误。但是当我试图在控制台上点击 URL 时,它给出了以下错误

原因:org.eclipse.jgit.errors.TransportException:需要身份验证但尚未注册 CredentialsProvider

请帮我解决这个问题。

标签: springgitauthenticationsshspring-cloud-config

解决方案


您使用的是 https 而不是 ssh,因此您需要用户名和密码验证而不是私钥


推荐阅读