我正在研究Spring Cloud Config一段时间。我有一个保护配置数据的要求。根据Spring Cloud文档,已经配置了server.jks并添加到类路径中。现在我能够加密和解密远程配置数据。
为了确保配置服务器的安全,我添加了spring security starter并分配了凭据(密码decryded)。出于某种原因,应用程序抛出了它在类路径上没有键存储的expeptions。在搜索了一段时间之后,我发现密钥存储应该转到bootstrap.yml而不是application.yml。这也不起作用,请指出我在这里缺少什么。
java.lang.IllegalStateException: Cannot decrypt: key=security.user.password
at org.springframework.cloud.bootstrap.encrypt.EnvironmentDecryptApplicationInitializer.decrypt(EnvironmentDecryptApplicationInitializer.java:195) ~[spring-cloud-context-1.1.0.BUILD-SNAPSHOT.jar:1.1.0.BUILD-SNAPSHOT]
at org.springframework.cloud.bootstrap.encrypt.EnvironmentDecryptApplicationInitializer.decrypt(EnvironmentDecryptApplicationInitializer.java:164) ~[spring-cloud-context-1.1.0.BUILD-SNAPSHOT.jar:1.1.0.BUILD-SNAPSHOT]
at org.springframework.cloud.bootstrap.encrypt.EnvironmentDecryptApplicationInitializer.initialize(EnvironmentDecryptApplicationInitializer.java:94) ~[spring-cloud-context-1.1.0.BUILD-SNAPSHOT.jar:1.1.0.BUILD-SNAPSHOT]
at org.springframework.cloud.bootstrap.BootstrapApplicationListener$DelegatingEnvironmentDecryptApplicationInitializer.initialize(BootstrapApplicationListener.java:333) ~[spring-cloud-context-1.1.0.BUILD-SNAPSHOT.jar:1.1.0.BUILD-SNAPSHOT]
at org.springframework.boot.SpringApplication.applyInitializers(SpringApplication.java:640) [spring-boot-1.3.3.RELEASE.jar:1.3.3.RELEASE]
at org.springframework.boot.SpringApplication.createAndRefreshContext(SpringApplication.java:343) [spring-boot-1.3.3.RELEASE.jar:1.3.3.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:307) [spring-boot-1.3.3.RELEASE.jar:1.3.3.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1191) [spring-boot-1.3.3.RELEASE.jar:1.3.3.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1180) [spring-boot-1.3.3.RELEASE.jar:1.3.3.RELEASE]
at com.test.TestConfigServerApplication.main(TestConfigServerApplication.java:12) [classes/:na]
Caused by: java.lang.UnsupportedOperationException: No decryption for FailsafeTextEncryptor. Did you configure the keystore correctly?
at org.springframework.cloud.bootstrap.encrypt.EncryptionBootstrapConfiguration$FailsafeTextEncryptor.decrypt(EncryptionBootstrapConfiguration.java:151) ~[spring-cloud-context-1.1.0.BUILD-SNAPSHOT.jar:1.1.0.BUILD-SNAPSHOT]
at org.springframework.cloud.bootstrap.encrypt.EnvironmentDecryptApplicationInitializer.decrypt(EnvironmentDecryptApplicationInitializer.java:187) ~[spring-cloud-context-1.1.0.BUILD-SNAPSHOT.jar:1.1.0.BUILD-SNAPSHOT]
... 9 common frames omitted
我有过这个问题。要在spring cloud的最新版本中设置对称加密,只需在bootstap.yml(或.properties)中使用所需的密钥设置encrypt.key
属性(建议将密钥设置为操作系统环境变量,并在文件中引用该变量。这是为了提高安全性)
但是,正如您所发现的那样,bootsrap文件中的属性不再被导入。您必须将以下依赖项添加到pom文件中,以便加载该文件中的属性:
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-bootstrap</artifactId>
</dependency>
做完这件事后,每件事都会顺利进行。
我试图让我的Spring Cloud Config服务器处理加密的值,但到目前为止收效甚微。 我创建了一个最小的应用程序,其中包含一个从配置返回值的控制器。 我使用的是Cloud Config Server 1.4.0
我正在尝试使用Spring配置服务器和客户端加密和解密配置属性。我有Spring启动应用程序(服务器和客户端),使用服务器我有加密的密码属性,在客户端,我试图使用相同的密钥解密它,但出错了。我正在尝试启用配置服务器客户端来解密这些最初由配置服务器加密的属性。以下是我遵循的步骤: > < li> 安装全强度JCE并替换JRE lib/security中的2个策略文件 使用keytool生成密钥 向p
我正在使用Spring Netflix创建一个服务器配置。我已经配置了pom.xml,并且添加了安全依赖项。此外,我还配置了application.yml和bootstrap.yml文件。当使用encrypt命令调用服务器返回加密的密钥时,服务器响应: 白标签错误页 此应用程序没有/error的显式映射,因此您将其视为一种后退。 2015年7月23日(Thu Jul 23)10:20:46(CES
本文向大家介绍ubuntu16.04服务器配置ssh免密码登录,包括了ubuntu16.04服务器配置ssh免密码登录的使用技巧和注意事项,需要的朋友参考一下 在客户端操作 文件位置写/home/try/.ssh/server_rsa,不使用默认值,我命名为server_rsa担心影响到git的key(因为我的git使用的是默认值) ssh-copy-id root@123.45.56.78(你的
我正在尝试使用在我的设备上生成的RSA密钥解密我的android应用程序中的字符串。加密由php服务完成,使用我的应用程序提供的公共rsa密钥。我的问题是解密,解密失败了。 我正在做以下工作: 在用base64.encode(pubkey.getencoded())和私钥进行“base64”编码后,这两个密钥(公共和私有)都保存到文件中。->好 当我调用我的webservice时,我在post变量
我已经在Elastic Beanstalk上设置了一个工作解析服务器。我添加了一个AWS ElasticCache Redis服务器用于缓存,但我无法在使用密码时使连接工作,只有在没有密码的情况下。在我的解析服务器索引中。js文件,我在其中创建与Redis连接的新解析服务器,如下所示: 其中我的URL看起来像REDIS\u URL=clustercfg。xxxx年。xxxx年。use1.cache