AWS 参数存储后端
Spring Cloud Config Server 支持将 AWS Parameter Store 作为配置属性的后端。你可以通过添加 AWS Java SDK for SSM 的依赖来启用此功能。
<dependency>
<groupId>software.amazon.awssdk</groupId>
<artifactId>ssm</artifactId>
</dependency>
以下配置使用 AWS SSM 客户端来访问参数。
spring:
profiles:
active: awsparamstore
cloud:
config:
server:
awsparamstore:
region: eu-west-2
endpoint: https://ssm.eu-west-2.amazonaws.com
origin: aws:parameter:
prefix: /config/service
profile-separator: _
recursive: true
decrypt-values: true
max-results: 5
下表描述了 AWS Parameter Store 的配置属性。
表 1. AWS Parameter Store 配置属性
属性名称 | 是否必填 | 默认值 | 备注 |
---|---|---|---|
region | 否 | AWS Parameter Store 客户端使用的区域。如果未明确设置,SDK 会尝试通过使用 默认区域提供链 来确定要使用的区域。 | |
endpoint | 否 | AWS SSM 客户端的入口点 URL。这可以用于指定 API 请求的备用端点。 | |
origin | 否 | aws:ssm:parameter: | 添加到属性源名称的前缀,以显示其来源。 |
prefix | 否 | /config | 指示从 AWS Parameter Store 加载的每个属性在参数层次结构中的 L1 级别的前缀。 |
profile-separator | 否 | - | 用于分隔附加配置文件与上下文名称的字符串。 |
recursive | 否 | true | 标志,指示是否检索层次结构中的所有 AWS 参数。 |
decrypt-values | 否 | true | 标志,指示是否检索所有 AWS 参数并解密其值。 |
max-results | 否 | 10 | AWS Parameter Store API 调用返回的最大项目数。 |
AWS Parameter Store API 的凭证是通过 默认凭证提供链 确定的。版本化参数已经得到支持,默认行为是返回最新版本。
备注
-
当未指定应用程序时,
application
是默认值,当未指定配置文件时,default
被使用。 -
awsparamstore.prefix
的有效值必须以正斜杠开头,后跟一个或多个有效的路径段,或者为空。 -
awsparamstore.profile-separator
的有效值只能包含点、破折号和下划线。 -
awsparamstore.max-results
的有效值必须在 [1, 10] 范围内。