2011-07-09 39 views
4

我使用AmazonS3 .NET SDK生成预签名的URL。他们工作正常,但他们现在停止工作。我曾经设置过期日期接近2038年,因为我想让它们永久保留。我使用了2038年,因为那个日期是一个纪元日期,并且有2038年问题(http://en.wikipedia.org/wiki/Year_2038_problem)。该SDK不限制你的日期,但似乎当您访问的网址它给你以下消息拒绝访问:AmazonS3 GetPreSignedUrlRequest max过期日期

<Message>Invalid date (should be seconds since epoch): 2147500800</Message> 

有谁知道是否有与到期日期的任何限制?

回答

3

它看起来像你已经知道这个答案。

一个快速测试显示约03:14 UTC on Tuesday, 19 January 2038后的失效日期确实失败。您遇到了您链接到的维基百科文章中的错误。

+0

谢谢杰夫。我问这是因为它与01-19-2038一起工作,但突然它停止工作,因为我没有找到任何有关这方面的文档,我想知道真正的限制。为了解决这个问题,我终于使用01-01-2038。 – spakinz

+0

@spakinz - 没问题。我相信你可以承受失去那些19天(27年):) –

1

确认了AWS S3 presignURL中的2038年问题。

我已经测试,直到01-19-2038 UTC 03:00:00,它仍然有效。

但是,为了避免时间螺丝我选择使用01-19-2038 UTC 00:00:00