AWS Parameter Store 后端

Spring Cloud Config Server 支持将 AWS Parameter Store 作为配置属性的后端。您可以通过添加对 AWS Java SDK for SSM 的依赖来启用此功能。

pom.xml
<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

-

用于分隔追加的 profile 与上下文名称的字符串。

recursive

true

标志,指示是否检索层次结构中的所有 AWS 参数。

decrypt-values

true

标志,指示是否检索所有 AWS 参数并对其值进行解密。

max-results

10

AWS Parameter Store API 调用返回的最大项目数。

AWS Parameter Store API 凭据使用 默认凭据提供链 确定。已支持带版本的参数,默认行为是返回最新版本。

  • 未指定应用程序时,默认为 application;未指定 profile 时,默认为 default

  • awsparamstore.prefix 的有效值必须以正斜杠开头,后跟一个或多个有效路径段,或为空。

  • awsparamstore.profile-separator 的有效值只能包含点、破折号和下划线。

  • awsparamstore.max-results 的有效值必须在 [1, 10] 范围内。