当前位置: 首页 > wzjs >正文

嘉定php网站开发培训富阳注册公司

嘉定php网站开发培训,富阳注册公司,phpcms网站模版下载,没有公司地址怎么注册公司接上三篇 Vault---机密信息管理工具安装及常用示例 Vault机密管理工具集群配置示例 vault签发根证书、中间证书、ca证书流程记录 项目里打算把所有密码都放到vault里管理,vault提供了springcloud vault用来在springboot里连接vault,启动加载vault里的值放…

接上三篇
Vault---机密信息管理工具安装及常用示例
Vault机密管理工具集群配置示例
vault签发根证书、中间证书、ca证书流程记录
项目里打算把所有密码都放到vault里管理,vault提供了springcloud vault用来在springboot里连接vault,启动加载vault里的值放到spring中,极端点,vault的kv引擎甚至可以做分布式配置中心来用,来替代nacos的配置中心功能,当然这样用的人还比较少。

maven引入:

<dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-vault-config</artifactId><version>3.0.3</version>
</dependency>

bootstrap.yml里加入:

spring:cloud:vault:application-name: venucia_fota_kvhost: 127.0.0.1port: 8200scheme: httpauthentication: TOKENtoken: xxxtokenconnection-timeout: 5000read-timeout: 15000config:order: -10kv:enabled: truebackend: kvTestprofile-separator: /application-name: /ota/pwd

注意springcloud vault源码里对启动顺序定义的很靠前,所以最好不要放到nacos里,它会在nacos加载配置文件前就生效,如果放到nacos里会报缺少token的错误。springcloud vault代码侵入性很小,只要引入jar包,配到springboot里就可以生效。

假设我们在vault里新建一个kvTest的kv引擎,在

kvTest/ota/pwd

路径存储了一系列json数据比如:

{"mysql-pwd":"xxxpsd"}

上面的配置文件中backend代表的是引擎名称,application-name如果不指定,默认拿spring.application.name,指定了路径就是自定义的路径

如此,在springboot启动后,如果vault正常连接,且配置在这里的token有该引擎的访问权限的话,就可以把vault里面存储的json值(key,value)放入spring里,我们在项目里或nacos里用$就可以输出或者用java输出。
如:
nacos里或者配置文件里

${mysql-pwd}

java代码里:

@Value("${mysql-pwd}")

或import org.springframework.core.env.Environment里拿:

Environment config = SpringContextUtil.getApplicationContext().getEnvironment();
String value = config.getProperty("mysql-pwd");
System.out.println("===" + value);

补充SpringContextUtil:

package ly.mp.project.common.util;import org.springframework.beans.BeansException;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
import org.springframework.stereotype.Component;@Component("springContextUtil")
public class SpringContextUtil implements ApplicationContextAware {private static ApplicationContext applicationContext; // Spring应用上下文环境public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {SpringContextUtil.applicationContext = applicationContext;}public static ApplicationContext getApplicationContext() {return applicationContext;}@SuppressWarnings("unchecked")public static <T> T getBean(String name) throws BeansException {return (T) applicationContext.getBean(name);}@SuppressWarnings("unchecked")public static <T> T getBean(Class<?> clz) throws BeansException {return (T) applicationContext.getBean(clz);}
}

别忘了给这个token最基本的policy权限:

path "kvTest/*" {capabilities = ["read", "list"]
}
path "secret/*"{capabilities = ["read", "list"]
}

springcloud vault会自动续期token

vault创建的token默认最长只有768h的有效期,也就是32天左右,但是springcloud vault jar包里做了自动续期的操作,实测在token将要过期前的5秒到3秒内会自动向vault发送renew-self请求实现自动续期,所以理论上只要项目在过期前的那个时间点还在运行,就可以自动续期。

如此,就可以把项目里的所有密码都放到vault里管理了,比如mysql密码,elasticsearch密码等等,要比直接放在nacos里更安全。



喜欢的朋友记得点赞、收藏、关注哦!!!

http://www.dtcms.com/wzjs/794665.html

相关文章:

  • 福州网站设计哪里好重庆物流最新消息
  • 自己用iis怎么建设网站网络营销的优势与不足
  • 吉林城市建设学校网站wordpress 白屏
  • 网站-网站建设定制一站式服务理念
  • 烟台网站建设首推企汇互联见效付款免认证域名
  • vps怎么上传网站程序四川省工程信息造价网
  • 做英文网站哪个网站比较好wordpress 木马 查
  • 陕西省建设造价协会网站白云区建网站公司
  • 广东加盟网站建设怎么查到代码是哪个网站做的
  • 室内设计网站推荐知乎汕头建站程序
  • 上海专业网站建设精英汕头app制作
  • 如何介绍网站模板久久建筑网官网登录入口
  • 余姚汽车网站建设wordpress本地主机
  • 帮助设计的网站重庆好的网站制作公司哪家好
  • 江西省城市建设档案馆网站面包网站seo
  • 电子商务网站建设计划书嘉兴网站制作哪家专业
  • 优惠券网站是怎么做的引流渠道推广
  • 颜色搭配对网站重要性让人做网站需要注意什么
  • 钓鱼网站的域名怎么不稳定网站提交搜索引擎后出现问题
  • 深圳建设集团网站官网wordpress邀请码教程
  • 浙江网站建设哪里有2018年的网站制作
  • 建设一个小说网站多少钱米问外贸论坛
  • 网站绑定多个域名大连小程序定制
  • 网站专题页是什么在韩国申请网站域名需要什么
  • 网站模板中心个人专业网站备案
  • 网站开发小组天津网站建设品牌推广
  • 河南建设资格执业网站linux的wordpress渗透
  • 网站取源用iapp做软件代理服务器怎么设置
  • 宣传中心网站建设人力资源公司劳务派遣
  • 常州在线制作网站海口今天的消息