文档首页/ 应用平台 AppStage/ SDK参考/ 运行时引擎/ STS SDK/ 使用STS SDK(Spring Cloud框架)
更新时间:2024-04-09 GMT+08:00
分享

使用STS SDK(Spring Cloud框架)

引入STS SDK

在pom.xml中添加STS SDK依赖。
<dependency>      
     <groupId>com.huawei.wisecloud.sts</groupId>
     <artifactId>sts-spring-boot</artifactId>
     <version>${sts.version}</version>
</dependency>
  • 将${sts.version}替换成实际所使用的STS SDK版本。
  • 如果将SDK放到外部maven仓中,则只需要添加sts-spring-boot依赖。
  • 如果采用本地依赖的方式引入SDK,即手动将本地下载的SDK jar包引入到工程的lib目录下,还需要添加间接依赖:

    sts-key-sdk、sts-sdk-base、cloudsoa-security。

配置STS

在微服务的ClassPath下增加添加配置文件sts/sts.properties(该文件路径可以通过环境变量sts.properties进行修改),内容为:

sts.server.domain=10.202.251.196:8080                                              #STS服务器的地址
sts.config.path=/opt/huawei/certs/xxxService/xxxMicroService/xxxMicroService.ini   #STS微服务证书路径,基础设施即代码(Infrastructure as Code,简称IaC)会将证书放在固定路径下,格式为/opt/huawei/certs/服务名/微服务名/微服务名.ini

初始化STS

在启动类中增加注解@EnableStsAutoInitialization(value = "sts.properties"),注解的含义是启动STS自动初始化,其中value是指定STS的配置文件路径。

使用注解时,是通过加装Bean的方式初始化STS和解密敏感配置项,由于Bean的加载顺序不固定,有时会出现使用STS解密的代码被加载了,初始化STS的Bean还没有被加载。如果出现这种情况,可以在使用STS的类方法上添加如下方法解决此问题:

@Import(value = {StsEncryptablePropertiesConfiguration.class})

相关文档