如何从 AssumeRole 刷新凭据以增加其时间限制?

How to refresh credentials from AssumeRole to increase their time limit?

我了解已为 AssumeRole 指定了一个可配置的限制,但在最多 12 小时内有一个硬停止。我需要将 AssumeRole 用于可能需要更长时间的操作,并希望凭据可以根据需要持续使用。有没有一种方法可以“刷新”凭据,例如:

用户在 0 点通过 Athena JDBC 连接器登录 Tableau 并在 12 小时后执行 API 调用,凭据在内部刷新,因此有一种错觉,即它们已被记录在永久,并且 API 呼叫成功?问题在于客户必须使用 AssumeRole API 重复生成临时凭证才能访问 Tableau 等数据分析工具。

为此我需要一个 Java 解决方案 - 我知道 boto 已经做了一些稍微有点老套的方法来刷新这些信誉。

AssumeRole 凭据的最长持续时间为 12 小时。

GetSessionTokenGetFederationToken 的限制是 36 小时。

无法“刷新”凭据,但您可以再次调用 AssumeRole 并获取一组新的凭据,有效期为 12 小时。