0

我编写了一个 javascript 文件管理器来管理 Amazon S3 上的用户文件。它使用 AWS Javascript API。使用硬编码的 IAM 用户凭证开发它,现在生产想要使用临时凭证代替。

我的计划是让我们的 PHP 服务器通过 STS GetSessionToken 通过从 JS 代码到 PHP 的 AJAX 回调从 IAM 凭证生成临时凭证。看起来很简单,但我似乎找不到任何关于如何将 IAM 密钥/秘密传递给 URL 中的 GetSessionToken 的文档。AWS 文档中的示例都显示如下:

https://sts.amazonaws.com/?Version=2011-06-15&Action=GetSessionToken&DurationSeconds=3600&AUTHPARAMS

我猜“AUTHPARAMS”是如此明显,以至于我不需要任何进一步的解释。但遗憾的是,我确实需要进一步的解释。我从 PHP 方面需要的只是这个小调用,所以我真的不想为此安装整个 AWS PHP 开发工具包。如果我能找出如何为这个调用构建 URL,那么我可以通过 CURL 将其发送出去,然后一切就绪。至少这是计划。

有没有办法通过 REST api 直接调用 GetSessionToken,并将 IAM 密钥/秘密传递给它,还是真的比这更复杂?

4

1 回答 1

0

您需要了解AWS API 请求签名。更多细节在这里。请注意,2014 年 1 月 30 日之后开放的 AWS 区域需要 v4 签名,而较早的区域接受 v2 或 v4 签名。

或者只使用 PHP SDK,这一切都变得更加简单。

于 2016-05-30T00:33:58.937 回答