Nacos 配置加密

nacos配置加密官网

官网介绍太简单,而且GitHub 网络受限,随缘访问。Gitee 发现有镜像仓库,同步的最新版本

Gitee nacos 镜像仓库

但是官网中提到的加密插件,未找到相应的镜像仓库,需要在 GitHub 拉取。

Nacos 插件打包

直接用 idea 打开,必须打包 install 到本地,maven 仓库无该依赖。

新版本的 nacos 集成了达梦数据库,打包时报错,需自行下载达梦驱动,配置路径。

生成后的maven

        <dependency>
<groupId>com.alibaba.nacos</groupId>
<artifactId>nacos-aes-encryption-plugin</artifactId>
<version>1.0.0-SNAPSHOT</version>
</dependency>

Nacos 源码编译

将上述 maven 依赖,添加到源码config 模块下

修改 console 模块 application.properties 文件,配置 MySQL数据库

新版本的 nacos spring.datasource.platform=mysql 已经弃用,改为 spring.sql.init.platform=mysql

### Deprecated configuration property, it is recommended to use `spring.sql.init.platform` replaced.

只需修改配置

spring.sql.init.platform=mysql
db.num=1
db.url.0=jdbc:mysql://127.0.0.1:3306/nacos-2.3.0?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user.0=root
db.password.0=admin123456

修改 distribution 设置 单机启动

这里设置好生成的 jar 包,默认单机启动。

测试加密

上述工作完成后,对整个 nacos 项目整体 clean 、 package 、 install 。

启动 console 模块下的 Nacos 启动类,访问 nacos

按官网文档创建加密配置

  • 打开 Nacos 控制台,点击新建配置。
  • 配置前缀使用cipher-[加密算法名称]-dataId来标识这个配置需要加密,系统会自动识别并加密。例如使用 AES 算法来解密配置:cipher-aes-application-dev.yml。
  • 点击保存,查看数据库

正常你会看到数据库加密内容如下,content 被加密后的配置,encrypted_data_key 秘钥

测试成功后

在控制台项目根目录执行如下命令,distribution 模块 target 目录下 生成 nacos 压缩包

mvn -Prelease-nacos -Dmaven.test.skip=true clean install -U

解压后,按正常流程配置数据源,打开鉴权,启动测试。

微服务配置

nacos 配置文件添加 cipher-aes- 前缀后, 需要修改bootstrap.yml 文件,读取相应的配置中心名称(默认按服务名称读取)

示例如下:

spring:
application:
name: xxx
cloud:
nacos:
discovery:
server-addr: ${NACOS_HOST:127.0.0.1}:${NACOS_PORT:8848}
config:
server-addr: ${spring.cloud.nacos.discovery.server-addr}
file-extension: yml
shared-configs:
- application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
# 重点
name: cipher-aes-${spring.application.name}
username: nacos
password: nacos
# 排除避免gateway跟springboot版本冲突
autoconfigure:
exclude: org.springframework.cloud.gateway.config.GatewayAutoConfiguration,org.springframework.cloud.gateway.config.GatewayClassPathWarningAutoConfiguration
profiles:
active: @profiles.active@

Nacos 配置加密的更多相关文章

  1. Spring Cloud Alibaba基础教程:Nacos配置的多文件加载与共享配置

    前情回顾: <Spring Cloud Alibaba基础教程:使用Nacos实现服务注册与发现> <Spring Cloud Alibaba基础教程:支持的几种服务消费方式> ...

  2. Spring Cloud Alibaba基础教程:Nacos配置的多环境管理

    前情回顾: <Spring Cloud Alibaba基础教程:使用Nacos实现服务注册与发现> <Spring Cloud Alibaba基础教程:支持的几种服务消费方式> ...

  3. SpringBoot使用Nacos配置中心

    本文介绍SpringBoot如何使用阿里巴巴Nacos做配置中心. 1.Nacos简介 Nacos是阿里巴巴集团开源的一个易于使用的平台,专为动态服务发现,配置和服务管理而设计.它可以帮助您轻松构建云 ...

  4. Nacos配置中心

    本文介绍spring cloud 集成 nacos案例 官方文档:https://nacos.io/zh-cn/docs/what-is-nacos.html](https://nacos.io/zh ...

  5. 微服务之Nacos配置中心源码解析(二)

    Nacos配置中心源码解析 源码入口 ConfigFactory.createConfigService ConfigService configService = NacosFactory.crea ...

  6. tomcat配置加密的连接器https

    对称加密:加密和解密用的是同样的密钥. 非对称加密:使用一对密钥,公钥和私钥,私钥只由一方保管,不能外泄:公钥可以发给任何请求它的人 那么得到公钥的一方怎么确定这个公钥是服务器发过来的呢? 这个就需要 ...

  7. nacos配置服务入门

    1.nacos服务端部署 参见官方文档:https://nacos.io/zh-cn/docs/quick-start.html 2.nacos配置中心功能使用 在pol文件中添加依赖: 在启动类中使 ...

  8. Spring Cloud 系列之 Alibaba Nacos 配置中心

    Nacos 介绍 Nacos 是 Alibaba 公司推出的开源工具,用于实现分布式系统的服务发现与配置管理.英文全称 Dynamic Naming and Configuration Service ...

  9. Nacos配置中心使用

    在系统开发过程中,开发者通常会将一些需要变更的参数.变量等从代码中分离出来独立管理,以独立的配置文件的形式存在.目的是让静态的系统工件或者交付物(如 WAR,JAR 包等)更好地和实际的物理运行环境进 ...

  10. 微服务从nacos配置中心获得配置信息

    一,安装nacos, 略 二,创建父工程和微服务工程 service1, service2,以idea为例 1, new -> project -> Maven -> 填写group ...

随机推荐

  1. C语言基础要点

    C语言基础 C语言基础 C程序编译过程 C程序编译步骤 汇编语言 32关键字 数据类型 常量 size程序 类型限定 goto语句 指针 指针和字符串 作用域 函数 内存 进程内存结构 可执行文件结构 ...

  2. RHCA cl210 015 实例启动 超融合 热迁移 网络underlay

    lab computeresources-hci setup 实例启动流程 keystone不仅做认证,且有所有组键地址 nova-conductor解耦,不允许nova-compute直接访问dat ...

  3. 【Java】Collections 集合工具类

    Collections 集合工具类 - 操作Set.List.Map等集合的工具 - 提供了排序.查询.修改.操作,提供对对象设置不可变对集合容器对象实现同步控制等方法 排序操作: - static ...

  4. 【郝斌C ST】 指针入门

    #include <stdio.h> int main() { printf("Hello, World!\n"); int i = 3; int * p = & ...

  5. NVIDIA公司官宣最新最高性能的GPU芯片及平台 —— Blackwell GPU

    官宣视频: https://www.youtube.com/watch?v=bMIRhOXAjYk 相关: https://baijiahao.baidu.com/s?id=1793921686210 ...

  6. 【转载】 机器学习数据可视化 (t-SNE 使用指南)—— Why You Are Using t-SNE Wrong

    原文地址: https://towardsdatascience.com/why-you-are-using-t-sne-wrong-502412aab0c0 ==================== ...

  7. 【转载】 tmux 向上向下翻页,翻屏

    作者:江河湖海洋链接:https://www.jianshu.com/p/8835f2d4245f来源:简书著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. =========== ...

  8. dll文件缺失

    下载[dll修复工具],花点钱就可以了,比自己百度香多了,网上的解决方案解决不了的这个一键全部解决,愿意百度的去百度,百度不到的建议使用,我吃过这个亏,电脑刷机丢失140.dll文件,网上百度一个都不 ...

  9. 关于REACT范式的一些思考

    关于REACT范式的一些思考 REACT范式经过近一年的探索,让我们在很多领域有了非常广泛的应用,它确实提升了很多之前无法解决的问题,比如大模型虽然在语言理解和交互式决策方面在任务中表现出令人印象深刻 ...

  10. QT中TreeWidget树控件的使用

    关于Item Widgets中Tree Widget的使用方法! TreeWidget树控件的使用 创建列表头, 该控件有什么属性 QStringList header_list; header_li ...