Я создал приложение загрузки Spring, в котором я хочу использовать AWS секретов для application.properties. Я использую spring boot 2.2.6.RELEASE и в соответствии с документацией я добавил в свой pom следующие зависимости:
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-context</artifactId>
<version>2.2.3.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-aws-secrets-manager-config</artifactId>
<version>2.2.2.RELEASE</version>
</dependency>
From AWS Служба диспетчера секретов Я создал новый секрет типа «Другие типы секретов »и дал ему имя / secret / myservice . Для тестирования я добавил секретный ключ как environment и значение aws, которое я хочу получить в своем контроллере. Часть, которая мне непонятна, - это запись, которую мне нужно сделать в моем файле bootstrap .yml, поскольку я запутался с инструкциями в документации Spring Cloud AWS. Может ли кто-нибудь предоставить правильные инструкции, так как я не могу правильно использовать эту функцию. Для справки я добавил это в свой bootstrap .yml файл:
aws:
secretsmanager:
name: myservice
prefix: /secret
enabled: true
defaultContext: application
failFast: true
cloud:
aws:
region:
static: us-east-1
и попытался получить значение среды в контроллере:
@RestController
@EnableWebMvc
public class PingController {
@Value(value = "${environment}")
private String environment;
@RequestMapping(path = "/ping", method = RequestMethod.GET)
public Map<String, String> ping() {
Map<String, String> pong = new HashMap<>();
pong.put("pong", "Hello, World!" + "This is " + environment + " environment...");
return pong;
}
}