重要 先决条件:要使用加密和解密功能,您需要在JVM中安装全面的JCE(默认情况下不存在)。您可以从Oracle下载“Java加密扩展(JCE)无限强度管理策略文件”,并按照安装说明(实际上将JRE lib / security目录中的2个策略文件替换为您下载的文件)。
如果远程属性源包含加密内容(以{cipher}开头的值),则在通过HTTP发送到客户端之前,它们将被解密。这种设置的主要优点是,当它们“静止”时,属性值不必是纯文本(例如在git仓库中)。了解springcloud架构可以加求求:三五三六二四七二五九,如果值无法解密,则从属性源中删除该值,并添加具有相同键的附加属性,但以“无效”作为前缀。和“不适用”的值(通常为“<n / a>”)。这主要是为了防止密码被用作密码并意外泄漏。
如果要为config客户端应用程序设置远程配置存储库,可能会包含一个application.yml,例如:
application.yml
spring: datasource: username: dbuser password: '{cipher}FKSAJDFGYOS8F7GLHAKERGFHLSAJ'
properties文件中的加密值不能用引号括起来,否则不会解密该值:
application.properties
spring.datasource.username: dbuser spring.datasource.password: {cipher}FKSAJDFGYOS8F7GLHAKERGFHLSAJ
您可以安全地将此纯文本推送到共享git存储库,并且保密密码。
服务器还暴露了/encrypt和/decrypt端点(假设这些端点将被保护,并且只能由授权代理访问)。如果您正在编辑远程配置文件,可以使用Config Server通过POST到/encrypt端点来加密值,例如
$ curl localhost:8888/encrypt -d mysecret 682bc583f4641835fa2db009355293665d2647dade3375c0ee201de2a49f7bda
逆向操作也可通过/decrypt获得(如果服务器配置了对称密钥或全密钥对):
注意 如果要加密的值具有需要进行URL编码的字符,则应使用–data-urlencode选项curl来确保它们已正确编码。
$ curl localhost:8888/decrypt -d 682bc583f4641835fa2db009355293665d2647dade3375c0ee201de2a49f7bda mysecret
小费 如果您使用curl进行测试,则使用–data-urlencode(而不是-d)或设置显式Content-Type: text/plain,以确保在有特殊字符时正确地对数据进行编码(’+'特别是棘手)。
将加密的值添加到{cipher}前缀,然后再将其放入YAML或属性文件中,然后再提交并将其推送到远程可能不安全的存储区。
/encrypt和/decrypt端点也都接受/*/{name}/{profiles}形式的路径,当客户端调用到主环境资源时,可以用于每个应用程序(名称)和配置文件控制密码。
注意 为了以这种细微的方式控制密码,您还必须提供一种TextEncryptorLocator类型的@Bean,可以为每个名称和配置文件创建不同的加密器。默认提供的不会这样做(所有加密使用相同的密钥)。
spring命令行客户端(安装了Spring Cloud CLI扩展)也可以用于加密和解密,例如
$ spring encrypt mysecret --key foo 682bc583f4641835fa2db009355293665d2647dade3375c0ee201de2a49f7bda $ spring decrypt --key foo 682bc583f4641835fa2db009355293665d2647dade3375c0ee201de2a49f7bda mysecret
要在文件中使用密钥(例如用于加密的RSA公钥),使用“@”键入键值,并提供文件路径,例如
$ spring encrypt mysecret --key @${HOME}/.ssh/id_rsa.pub AQAjPgt3eFZQXwt8tsHAVv/QHiY5sI2dRcR+...
关键参数是强制性的(尽管有一个–前缀)。
相关推荐
基于Spring Cloud的微服务分布式企业级B2B2C商城系统设计源码,该项目包含1562个文件,主要文件类型有520个java源文件,以及335个png图像文件。此外,还包括273个javascript文件,以及135个vue前端文件。该项目是一...
下面我们将在springcloud微服务项目中,使用redis实现简单高效的session共享。 了解springcloud架构可以加求求:三五三六二四七二五九 新建一个spring boot项目,命名springcloud-session-redis POM依赖配置 4.0.0...
php+mysql仿京东商城,B2B2C电子商务-打通电商全平台,多店铺统一管理 用户注册和登录 商品管理(产品列表、产品详情、商品分类) 订单管理(订单创建、支付、物流追踪) 会员中心(用户信息、订单历史、收藏商品...
axis2c-bin-1.6.0-linux.tar.gz axis2c-bin-1.6.0-win32.zip axis2c-src-1.6.0.tar.gz axis2c-src-1.6.0.zip 加md5
B2B2C电子商务模式是一种新的网络购物商业模式,将B2B和B2C模式完美地结合起来,提供统一的服务。该模式中,第一个B指的是商品或服务的供应商,第二个B指的是从事电子商务的企业,C则是表示消费者。B2B2C模式具有...
uniapp的一个小项目,会vue的可直接上手。
SpringCloud微服务电商实战项目是当前电子商务发展的热点话题, 本文档将从畅购商场的角度,透视SpringCloud微服务电商实战项目的框架搭建、电商系统技术特点、主电商模式等方面对 SpringCloud 微服务电商实战项目...
一个基于Spring Cloud、Nacos、Seata、Mysql、Redis、RocketMQ、canal、ElasticSearch、minio的微服务B2B2C电商商城系统,采用主流的互联网技术架构、全新的UI设计、支持集群部署、服务注册和发现以及拥有完整的订单...
"B2B2C电子商务模式探讨" 随着互联网技术的不断发展,电子商务模式也在不断创新和完善。其中,B2B2C 作为一种独特的商业模式,已经在电商领域中得到了广泛应用。这种模式不仅为消费者提供了便捷的购物体验,也为...
恒生 B2B2C 电子商务平台解决方案电子商务解决方案 本解决方案是一种全面、高效的电子商务解决方案,旨在满足不同行业、不同规模的企业在电子商务领域的全方位需求。该解决方案凭借其灵活性强、安全稳定、便捷高效...
一个基于Spring Cloud、Nacos、Seata、Mysql、Redis、RocketMQ、canal、ElasticSearch、minio的微服务B2B2C电商商城系统,采用主流的互联网技术架构、全新的UI设计、支持集群部署、服务注册和发现以及拥有完整的订单...
《B2B2C电子商务模式探讨》 B2B2C电子商务模式,是现代商业领域中的一种创新性网络购物模式,它将B2B(Business to Business)和B2C(Business to Consumer)的优点相结合,形成了一种独特的商业运作方式。这种模式...
【标题】"基于PHP的UQCMS云商B2B2C电子商务系统"是指一个采用PHP编程语言开发的电子商务解决方案,特别设计用于构建B2B2C(Business-to-Business-to-Consumer)类型的在线市场平台。这样的系统允许企业对企业和消费...
本商城是基于Spring Cloud、Nacos、Seata、Mysql、Redis、RocketMQ、canal、ElasticSearch、minio的微服务B2B2C电商商城系统,采用主流的互联网技术架构、全新的UI设计、支持集群部署、服务注册和发现以及拥有完整的...
本项目是一款基于Spring Cloud架构的Mall4j微服务B2B2C电商商城系统设计源码,共包含1644个文件。其中,Java源文件521个,JavaScript文件330个,Vue文件135个,CSS和HTML文件共17个,其他包括TypeScript、图片、SVG...
【标题】"B2B2C商城源码.zip"揭示了这是一个包含B2B2C电子商务平台源代码的压缩文件。B2B2C(Business-to-Business-to-Consumer)模式是电商领域的一种商业模式,它整合了企业对企业(B2B)和企业对消费者(B2C)的...
在电子商务领域,B2B2C(Business-to-Business-to-Consumer)模式是一种结合了企业对企业(B2B)和企业对消费者(B2C)的商业模式。B2B2C电子商务网站系统解决方案旨在帮助企业搭建一个既能进行批发交易,也能进行...
Mall4cloud商城系统 springcloud 电商商城系统 B2C商城 BBC商城 O2O商城 B2B2C商城 多语言商城 小程序商城 PC商城 H5商城 APP商城 Java商城 分销商城 多用户商城 uniapp商城 跨境电商商城 积分商城 会员商城
【PHP实例开发源码-UQCMS云商B2B2C电子商务系统】是一个基于PHP编程语言的开源电子商务解决方案,主要用于构建多商家、多用户参与的在线交易平台。B2B2C(Business-to-Business-to-Consumer)模式是现代电商领域中的...