【问题标题】:AWS IAM requestsAWS IAM 请求
【发布时间】:2019-03-31 18:42:08
【问题描述】:

委托人(个人或应用程序)使用实体(用户或角色)向 AWS API 发送请求。现在,当您使用 AWS 控制台与 AWS 生态系统交互时,我知道这些请求是自动签名的,以便 AWS 可以识别发送它们的人(而您需要手动签署 HTTP API 调用)。

  1. 对 AWS API 的每个请求是否都已签名?无论请求是否来自 Console/CLI/SDK/HTTP API。我知道很少有 STS 和 S3 操作是例外,但我的问题是找出签署请求是否取决于请求的来源,即控制台/CLI/SDK/HTTP API?或者如果这适用于所有自动或手动?

  2. 在 IAM 用户指南文档中,提到 -

当您使用 AWS 命令​​行界面 (AWS CLI) 或其中一种 AWS SDK 向 AWS 发出请求,这些工具会自动签署 使用您指定的访问密钥为您请求 配置工具

那么,当通过 AWS 控制台发出请求时,这些请求是如何签名的?因为控制台用户没有访问密钥?

  1. 当担任一个角色时,用户发送一个 STS:Assumerole 请求,请求中指定的角色。返回的临时凭证是否适用于担任该角色的用户或临时凭证是否适用于该角色?基本上,我想了解的是,如果 STS:Assumerole 是对角色或担任该角色的用户进行身份验证?

【问题讨论】:

    标签: amazon-web-services amazon-iam


    【解决方案1】:

    CLI 使用 Python SDK (boto3),它使用 HTTP API。他们都签署了 HTTP API 请求 same way。如果不先配置访问密钥,您将无法使用 CLI。

    sts:AssumeRole 为您提供该角色而非用户的临时访问密钥。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-06-25
      • 1970-01-01
      • 1970-01-01
      • 2019-12-10
      • 2021-10-13
      • 2020-05-24
      • 2018-10-27
      相关资源
      最近更新 更多