Я хочу создать ссылку s3 для загрузки файла, ссылка должна быть активной не менее 6 дней. Я пробовал с параметрами InstanceProfileCredentialsProvider (false) (которые работали только в течение 24 часов), ProfileCredentialsProvider (даже не создает ссылку), ключ доступа
Ключ доступа пользователя IAM работал, но срок действия этого ключа истекает через несколько дней, поэтому каждый раз мне приходится менять его в коде, а также я думаю, что не рекомендуется раскрывать ключ в коде.
Есть ли другой способ создать ссылку для загрузки s3, срок действия которой истекает только через 6 дней.
Ниже приведен фрагмент кода: -
AmazonS3 s3Client = AmazonS3ClientBuilder.standard().withCredentials(new InstanceProfileCredentialsProvider(false))
.build();
java.util.Date expiration = new java.util.Date();
long milliSeconds = expiration.getTime();
milliSeconds += 1000 * 60 * 60 * 24 * 7; // Add 7 days.
expiration.setTime(milliSeconds);
GeneratePresignedUrlRequest generatePresignedUrlRequest = new GeneratePresignedUrlRequest("s3bucket",
"fileLocationpath");
generatePresignedUrlRequest.setMethod(HttpMethod.GET);
generatePresignedUrlRequest.setExpiration(expiration);
link = s3Client.generatePresignedUrl(generatePresignedUrlRequest);
now().plus(6, DAYS).toEpochMilli()
было бы намного легче читать.) - person chrylis -cautiouslyoptimistic-   schedule 17.12.2019