1

为了不暴露我的密钥库凭据(以明文形式),我有一个 bean 定义

@Bean
    public KeyProperties keyProperties() throws MalformedURLException {
        //snipped
        return keyProperties;
    }

就我的密钥库信用而言,这是可行的。加密端点有效,如果我在 git 的属性文件中有密码道具,它会正确解密它。

不幸的是,当我为 git spring.cloud.config.server.git.password={cipher}snipped 设置属性时,它会引发异常

原因:java.lang.UnsupportedOperationException:FailsafeTextEncryptor 没有解密。您是否正确配置了密钥库?在 org.springframework.cloud.bootstrap.TextEncryptorConfigBootstrapper$FailsafeTextEncryptor.decrypt(TextEncryptorConfigBootstrapper.java:162) 我猜是因为密钥库 bean 在那个时间点没有被初始化

有谁知道我如何为 git 端点配置一个 bean?

@Bean
    public CredentialsProvider getCredentialsProvider() {
        GitCredentialsProviderFactory gcp = new GitCredentialsProviderFactory();
        CredentialsProvider cp = gcp.createFor("url","username","password",null,false);
        return cp;
    }

似乎不起作用。

谢谢

4

0 回答 0