gpt4 book ai didi

java - 亚马逊 SDK - 临时凭证和 AssumeRoleRequest

转载 作者:搜寻专家 更新时间:2023-10-30 21:32:40 26 4
gpt4 key购买 nike

我使用的是 Amazon Java SDK 1.11.79 版我的工作是创建我所有服务器卷的快照。随着 sleep 等(以满足亚马逊 SDK 指南)——这已经开始花费一个多小时

我使用以下代码通过临时凭证构建我的 AmazonEC2Client

        AssumeRoleRequest assumeRequest = new AssumeRoleRequest().withRoleArn(roleARN).withExternalId(externalId).withDurationSeconds(3600)
.withRoleSessionName(roleSessionName);

AssumeRoleResult assumeResult = amazonSecurityTokenServiceClient.assumeRole(assumeRequest);
Credentials credentials = assumeResult.getCredentials();

temporaryCredentials = new BasicSessionCredentials(credentials.getAccessKeyId(), credentials.getSecretAccessKey(), credentials.getSessionToken());

CustomAmazonCredentialsProviderVO customAmazonCredentialsProviderVO = new CustomAmazonCredentialsProviderVO();
customAmazonCredentialsProviderVO.setCredentials(temporaryCredentials);
LOG.debug("customAmazonCredentialsProviderVO:{}", customAmazonCredentialsProviderVO);

amazonEC2Client = new AmazonEC2Client(customAmazonCredentialsProviderVO, amazonClientConfiguration);

问题出在 AssumeRoleRequest 和 withDurationSeconds 方法上 - 您可以将其设置的最大值为 3600 秒(1 小时)

我需要能够将其设置为 2 或 3 小时

有谁知道是否有另一种方法可以创建持续超过 1 小时的临时凭证?

谢谢达米安

最佳答案

您可以使用 GetSessionToken ,如果您是 IAM 用户,它接受高达 129600 的 DurationSeconds 值。

来自文档:

Credentials that are created by IAM users are valid for the duration that you specify, from 900 seconds (15 minutes) up to a maximum of 129600 seconds (36 hours), with a default of 43200 seconds (12 hours)

关于java - 亚马逊 SDK - 临时凭证和 AssumeRoleRequest,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41943792/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com