обновление токена и секрета AWS в ECS с помощью Java

Я могу получить токен и секрет в контейнере ECS из 169.254.170.2 $ AWS_CONTAINER_CREDENTIALS_RELATIVE_URI (см. https://aws.amazon.com/premiumsupport/knowledge-center/ecs-fargate-access-aws-services/).

Кажется, что в пакете AWS Java SDK v1 заключено следующее: https://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/index.html?com/amazonaws/auth/ContainerCredentialsProvider.html

Кажется, он также предоставляет методы для проверки даты истечения срока действия и обновления полученных данных.

AWS Java SDK v2, похоже, также содержит следующее: https://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/auth/EC2ContainerCredentialsProviderWrapper.html

Однако он не указывает срок годности, так как же его использовать? У меня складывается впечатление, что токена хватает меньше суток.

В пакете AWS Java SDK v2 также есть другая оболочка: https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/auth/credentials/ContainerCredentialsProvider.Builder.html

Он не предоставляет метод обновления или дату истечения срока действия, но родительский класс (https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/auth/credentials/HttpCredentialsProvider.Builder.html) позволяет установить, будет ли он обновляться асинхронно, и установить имя потока (предположительно для обработки асинхронного обновления), но нет документации о том, как использовать asyncThreadName.

Итак, как я могу получить токен и секрет и узнать, как и когда их обновлять?


person tschumann    schedule 02.06.2021    source источник


Ответы (1)


Согласно AWS Support, добавление вызова asyncCredentialUpdateEnabled (true) выполняет обновление в фоновом режиме без каких-либо дополнительных усилий.

person tschumann    schedule 24.06.2021