Spring Cloud 客户端使用
2024-01-03 17:08 更新
要在应用程序中使用这些功能,只需将其构建为依赖于spring-cloud-vault-config
的Spring Boot应用程序即可(例如,查看测试用例)。Maven示例配置:
示例101.1 pom.xml
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.0.0.RELEASE</version> <relativePath /> <!-- lookup parent from repository --> </parent> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-vault-config</artifactId> <version>{project-version}</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> <!-- repositories also needed for snapshots and milestones -->
然后,您可以创建一个标准的Spring Boot应用程序,例如以下简单的HTTP服务器:
@SpringBootApplication @RestController public class Application { @RequestMapping("/") public String home() { return "Hello World!"; } public static void main(String[] args) { SpringApplication.run(Application.class, args); } }
运行时,它将从端口8200
上的默认本地Vault服务器获取外部配置(如果正在运行)。要修改启动行为,您可以使用bootstrap.properties
来更改Vault服务器的位置(例如application.properties
,但用于应用程序上下文的引导阶段),例如
示例101.2 bootstrap.yml
spring.cloud.vault: host: localhost port: 8200 scheme: https uri: https://localhost:8200 connection-timeout: 5000 read-timeout: 15000 config: order: -10
host
设置Vault主机的主机名。主机名将用于SSL证书验证port
设置Vault端口scheme
将方案设置为http
将使用纯HTTP。支持的方案是http
和https
。uri
使用URI配置Vault端点。优先于主机/端口/方案配置connection-timeout
设置连接超时(以毫秒为单位)read-timeout
设置读取超时(以毫秒为单位)config.order
设置属性来源的顺序
启用进一步的集成需要附加的依赖关系和配置。根据您设置Vault的方式,可能需要其他配置,例如 SSL和 身份验证。
如果应用程序导入了spring-boot-starter-actuator
项目,则可以通过/health
端点获得保管库服务器的状态。
可以通过属性management.health.vault.enabled
(默认值为true
)启用或禁用Vault运行状况指示器。
以上内容是否对您有帮助:
更多建议: