我们正在配置spring云配置服务器,下面是我的应用程序属性:
server.port=8080
spring.cloud.config.server.git.uri=https://github.com/myorganization/config-store.git
spring.cloud.config.server.git.searchPaths={application}
spring.cloud.config.server.git.clone-on-start=true
spring.cloud.config.server.git.skipSslValidation=true
spring.cloud.config.server.git.ignore-local-ssh-settings=true
spring.cloud.config.server.git.username=MyUser
spring.cloud.config.server.git.password=MyPassword
spring.cloud.config.server.git.default-label=develop
spring.application.name=config-server
spring.security.user.name=root
spring.security.user.password=password
我可以登录github网址,即。https://github.com/myorganization/config-store.git按照上面的属性使用用户名MyUser和密码MyPassword,但当我尝试使用:启动配置服务器时/mvnwspring-boot:run我得到以下错误:
Caused by: org.eclipse.jgit.errors.TransportException: https://github.com/myorganization/config-store.git: not authorized
我已经尝试了很多东西,但现在没有任何想法了,如果能提前得到任何帮助,我将不胜感激。
在GitHub上使用用户名和密码进行git操作已被弃用,并且不再有效,如本文所述。
您应该生成个人访问令牌,按照官方文档进行操作。然后您可以将令牌添加到spring配置中,就像您的密码一样:
spring.cloud.config.server.git.username=<yourusername>
spring.cloud.config.server.git.password=<yourtoken>
从2021年8月13日开始,我们在GitHub.com上验证Git操作时将不再接受帐户密码。
发件人:https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/
Thx至:https://stackoverflow.com/a/70443213/592355
对于Github Enterprise Server,我们的选项(也(是有限的,但被认为是安全的&有据可查:
使用API进行身份验证
您可以通过不同的方式使用API进行身份验证。…
- 个人访问令牌(->1。https://stackoverflow.com/a/69663073/5923552.https://stackoverflow.com/a/70580891/592355?(
- OAuth应用程序
- GitHub应用程序
使用命令行进行身份验证
- HTTPS
- SSH
当SSH时,对于春季云结束:
使用";本地ssh环境";或参见:https://docs.spring.io/spring-cloud-config/docs/current/reference/html/#_git_ssh_configuration_using_properties
您还可以使用github和从github生成的新细粒度访问令牌来实现这一点。在这种情况下,用户名和密码都必须设置为生成的相同令牌。
spring:
application:
name: config-service
cloud:
config:
server:
git:
uri: https://github.com/UserName/PrivateRepo
username: github_fine_access_token_xxxx
password: github_fine_access_token_xxxx
你也可以在这里使用环境变量