在将文件传输到AWS S3时处理AWS STS密钥到期?

时间:2015-03-18 06:12:50

标签: .net amazon-web-services amazon-s3 session-timeout aws-sdk

我们创建了STS会话令牌系统,使用适用于.Net的AWS SDK在AWS S3 Bucket上进行文件访问,时间范围为900秒,实际上是(15分钟),如果转移时间花费更多时间(超过15分钟)我要创建新密钥并恢复上传是否可以使用AWS sdk处理它?<​​/ p>

1 个答案:

答案 0 :(得分:2)

首先,在您调用STS API的代码中,您可以指定以秒为单位表示的到期时间。默认值确实为900秒,但可以手动设置为更高的值。

AWS要求您的凭据在每次API调用开始时都有效,但如果呼叫中途到期,则不会中断正在进行的操作。因此,如果您使用的是S3的标准PUT API,并且单个调用的时间比您的凭据的生命周期长,那就没问题。

如果是多部分上传,您的原点将发送多个GET请求。这些请求中的每一个都代表它想要下载的一小部分数据。如果时间范围已过期,则此后的每个GET请求都将被拒绝。

在AWS中有多种处理令牌续订的方法。一种方法是在每次请求之前检查令牌,并检查它是否达到了例如半衰期。如果有,请使用STS API进行更新。这个例子有点记录here

Source (Graeme@AWS)