5

我想使用临时安全凭证生成预签名的 S3 URL(我的程序在 EC2 主机上运行,​​该主机具有附加了我想要的策略的 IAM 角色)。

我在文档上看到了如何创建签名请求,我应该提供会话令牌作为预签名 URL 的一部分。这样暴露给公众安全吗?

关于如何使用临时凭证的文档说“AWS 使用会话令牌来验证临时安全凭证”,但是有人可以使用临时安全凭证中的访问密钥和会话令牌(两者都在预签名中可见URL) 做任何恶意的事情?

简而言之,我的问题是:AWS 临时安全凭证中的会话令牌有多机密?自己暴露有危险吗?如果我用相关的访问密钥显示它怎么办?

提前致谢!我一直对此摸不着头脑,因为 STS 文档并不清楚这个会话令牌的秘密程度,而且我绝对希望在安全方面做正确的事情。

4

1 回答 1

2

如果没有随附的秘密,会话令牌和访问密钥 ID 将毫无用处。从密钥+令牌+签名对秘密进行逆向工程在计算上是不可行的。

预签名 URL 旨在用于以下情况:您希望在不实际向用户提供凭据的情况下授予用户对特定资源的访问权限,并且必须包括x-amz-security-token使用临时凭据签名的 if。如果省略了令牌,服务将在使用签名 URL 时响应“您提供InvalidAccessKeyIdAWS 访问密钥 ID 在我们的记录中不存在” 。

它没有具体记录令牌中包含哪些信息,但没有记录表明它不适合在此应用程序中使用。似乎一个安全的假设是,它包含的任何信息都只能由拥有必要解密密钥的 AWS 服务加密和提取。

于 2018-03-18T03:46:08.997 回答