微服务(四)-config配置中心的配置加解密

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介: 微服务(四)-config配置中心的配置加解密

config配置中心的配置加解密

这次内容接着上次内容来写的:

首先提出疑问:比如在项目中非常隐私的东西也是非常关键的东西,

向数据源的username和password,以及服务器的地址,端口号不能以明文的方式放到git上面去的,需要加密起来。

1、在SpringCloud中有两种加密:对称加密,非对称加密

对称加密是可以解密的:有一个密钥来进行加解密:这就叫做对称加密算法:共用的是一个密钥,密钥就是同一把钥匙。

1.1、对称加密:<参考 SpringCloud官网>>

第一步:安装jce:jdk所提供的一种加密的测略。下载java 8JCE的就可以了。

第二步:把jce中的两个策略文件覆盖到jdk/jre/lib/security目录下面:

如何去实现加减密呢?

主要针对的是cloud-config来进行加解密。

2、重启config:看控制台在这里有加密和解密  encrypt/decrypt相应的路径,访问下:

在这里需要加一个对称加密的key,如果把这个key放到了application.yml文件中的话,还会报上面的错误,所以放到了bootstrap.yml文件中,这里是优先级的关系。可能在run运行的时候没有初始化这个配置的key,所以放到了bootstrap文件中。

然后重新访问下,有这个地址/encrypt,就可以进行加密这就可以进行加解密了。


比如对root加密,-d:是写入的密码,如下:

那么如何去使用这个加密后的结果呢?用"{cipher}加密的结果"

在解密的时候用的是cipher它来解密的。‘这就是在有密钥的时候解密成root。然后推送推送完这里就有对应的刷新,然后看config的后台:

然后这时用配置中心的客户端去访问下:

总结:上面的就是对称的加解密的情况:用的是对称加密的算法

3、非对称加密:它有公钥,和私钥之分。非对称怎么实现:加密起来更复杂

其实用的是keytool这个工具来实现的,就是一个非对称加密的工具。参照SpringCloud官网非对称加密:

步骤如下:

3.1、通过keytool工具来进行加密,官网有一些参数,这里主要是用的RSA算法

3.2、然后生成一个server.jks的文件。

3.3、把这个文件拷贝到当前的config的resources的根目录的下面。

接下来配置config:

password,alias,secret不是写死的,在上面的步骤也可以自己去实现。

3.4、启动下config,用法都一样,也是用/encrypt来加密,然后对root进行加密和解密。

3.5、在git上如何去使用呢,步骤如下:

然后,用配置中心的客户端cloud-provider去访问:访问也是成功的。

总结:非对称加密必须有server.jks和相应的配置才可以,用的是RSA算法。要不也不能解密和加密,这个比较安全。而对称加密是使用同一个密钥,才可以加解密。

相关文章
|
3月前
|
消息中间件 监控 开发工具
微服务(三)-实现自动刷新配置(不重启项目情况下)
微服务(三)-实现自动刷新配置(不重启项目情况下)
|
22天前
|
网络安全 Nacos 开发者
Nacos作为流行的微服务注册与配置中心,“节点提示暂时不可用”是常见的问题之一
Nacos作为流行的微服务注册与配置中心,其稳定性和易用性备受青睐。然而,“节点提示暂时不可用”是常见的问题之一。本文将探讨该问题的原因及解决方案,帮助开发者快速定位并解决问题,确保服务的正常运行。通过检查服务实例状态、网络连接、Nacos配置、调整健康检查策略等步骤,可以有效解决这一问题。
34 4
|
22天前
|
Java 网络安全 Nacos
Nacos作为流行的微服务注册与配置中心,其稳定性和易用性备受青睐。
Nacos作为流行的微服务注册与配置中心,其稳定性和易用性备受青睐。然而,实际使用中常遇到“客户端不发送心跳检测”的问题。本文深入探讨该问题的原因及解决方案,帮助开发者快速定位并解决问题,确保服务正常运行。通过检查客户端配置、网络连接、日志、版本兼容性、心跳策略、注册状态、重启应用和环境变量等步骤,系统地排查和解决这一问题。
45 3
|
22天前
|
安全 Nacos 数据库
Nacos是一款流行的微服务注册与配置中心,但直接暴露在公网中可能导致非法访问和数据库篡改
Nacos是一款流行的微服务注册与配置中心,但直接暴露在公网中可能导致非法访问和数据库篡改。本文详细探讨了这一问题的原因及解决方案,包括限制公网访问、使用HTTPS、强化数据库安全、启用访问控制、监控和审计等步骤,帮助开发者确保服务的安全运行。
29 3
|
2月前
|
JavaScript 前端开发 应用服务中间件
vue前端开发中,通过vue.config.js配置和nginx配置,实现多个入口文件的实现方法
vue前端开发中,通过vue.config.js配置和nginx配置,实现多个入口文件的实现方法
163 0
|
3月前
|
JavaScript
Vue3基础(19)___vite.config.js中配置路径别名
本文介绍了如何在Vue 3的Vite配置文件`vite.config.js`中设置路径别名,以及如何在页面中使用这些别名导入模块。
115 0
Vue3基础(19)___vite.config.js中配置路径别名
|
4月前
|
移动开发 JavaScript 前端开发
UniApp H5 跨域代理配置并使用(配置manifest.json、vue.config.js)
这篇文章介绍了在UniApp H5项目中处理跨域问题的两种方法:通过修改manifest.json文件配置h5设置,或在项目根目录创建vue.config.js文件进行代理配置,并提供了具体的配置代码示例。
UniApp H5 跨域代理配置并使用(配置manifest.json、vue.config.js)
|
2月前
|
前端开发 JavaScript
vite vue3 config配置
【10月更文挑战第5天】
57 0
|
4月前
|
JSON 前端开发 JavaScript
vue.config.js配置详解
【8月更文挑战第16天】vue.config.js配置详解
93 1
vue.config.js配置详解
|
4月前
|
Web App开发 安全 JavaScript
【Azure 应用服务】App Service 通过配置web.config来添加请求返回的响应头(Response Header)
【Azure 应用服务】App Service 通过配置web.config来添加请求返回的响应头(Response Header)