在 application.properties 里面有一个以下的属性
spring.cloud.nacos.password=密文
dubbo.registry.parameters.password=密文
百度查询在 springboot 可以通过继承 EnvironmentPostProcessor 接口来重写配置文件的属性,代码:
@SneakyThrows
@Override
public void postProcessEnvironment(ConfigurableEnvironment environment, SpringApplication application) {
String dubboPassword = environment.getProperty("dubbo.registry.parameters.password");
String nacosPassword = environment.getProperty("spring.cloud.nacos.password");
dubboPassword = AESHelper.AESDecrypt(dubboPassword, BaseRSAUtils.getDefaultPublicKey());
nacosPassword = AESHelper.AESDecrypt(nacosPassword, BaseRSAUtils.getDefaultPublicKey());
Properties properties = new Properties();
properties.setProperty("dubbo.registry.parameters.password", dubboPassword);
properties.setProperty("spring.cloud.nacos.password", nacosPassword);
MutablePropertySources propertySources = environment.getPropertySources();
propertySources.addFirst(new PropertiesPropertySource("nacos-properties", properties));
}
启动的时候,发生 nacos 会直接报错密码错误,现在猜测是 nacos 建立链接是在解密代码之前。dubbo 可以正常解密。想问一下应该怎么做,才能在 nacos 建立连接之前把配置文件进行解密
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.