什么是角色?

2024 年 8 月 28 日 | 3 分钟阅读
  • 角色是一组权限,用于授予对 AWS 中操作和资源的访问权限。 这些权限附加到角色,而不是附加到 IAM 用户或组。
  • IAM 用户可以使用同一 AWS 账户或不同账户中的角色。
  • IAM 角色类似于 IAM 用户; 角色也是一个 AWS 身份,具有权限策略,该策略确定身份可以在 AWS 中执行的操作和不能执行的操作。
  • 一个角色并非与单个人员唯一关联; 它可以被任何需要它的人使用。
  • 角色没有长期安全凭证,即密码或安全密钥。 相反,如果用户使用角色,则会创建临时安全凭证并提供给用户。
  • 您可以使用角色来委派对通常无权访问您的 AWS 资源的用户的访问权限、应用程序或服务。

“IAM 角色”可用的情况

  • 有时您希望授予用户访问您的 AWS 账户中的 AWS 资源的权限。
  • 有时您希望授予用户访问另一个 AWS 账户中的 AWS 资源的权限。
  • 它还允许移动应用程序访问 AWS 资源,但不希望将密钥存储在应用程序中。
  • 它可用于授予对 AWS 之外具有身份的 AWS 资源的访问权限。
  • 它还可以用于授予第三方对 AWS 资源的访问权限,以便他们可以对 AWS 资源执行审计。

以下是与“IAM 角色”相关的重要术语

  • 委派: 委派是授予用户权限以允许访问您控制的 AWS 资源的过程。 委派在受信任的账户(拥有资源的账户)和信任账户(包含需要访问资源的用户)之间建立信任关系。
    信任账户和受信任账户可以分为三种类型
    • 同一账户
    • 同一组织控制下的两个不同账户
    • 由不同组织拥有的两个不同账户。

要委派访问资源的权限,需要在信任账户中创建一个附加了两个策略的 IAM 角色。

权限策略: 它授予具有角色的用户执行预期任务所需的权限。

信任策略: 它指定哪些受信任账户成员可以使用该角色。

  • 联合身份验证: 联合身份验证是在外部服务提供商和 AWS 之间建立信任关系的过程。 例如,Facebook 允许用户使用其 Facebook 账户登录到不同的网站。
  • 信任策略: 以 JSON 格式编写的文档,用于定义允许谁使用该角色。 该文档是基于 IAM 策略语言的规则编写的。
  • 权限策略: 以 JSON 格式编写的文档,用于定义角色可以使用的操作和资源。 该文档基于 IAM 策略语言的规则。
  • 权限边界: 它是 AWS 的一项高级功能,您可以使用它来限制角色可以拥有的最大权限。 权限边界可以应用于 IAM 用户或 IAM 角色,但不能应用于服务关联角色。
  • 委托人: 委托人可以是 AWS 根账户用户、IAM 用户或角色。 可以在以下两种方式之一中授予的权限
    • 将权限策略附加到角色。
    • 对于支持基于资源的策略的服务,您可以在附加到资源的策略的委托人元素中标识委托人。
  • 跨账户访问:角色 vs 基于资源的策略: 它允许您将一个账户中资源的访问权限授予另一个账户中受信任的委托人,称为跨账户访问。 某些服务允许您直接附加策略,称为基于资源的策略。 支持基于资源的策略的服务包括 Amazon S3 存储桶、Amazon SNS、Amazon SQS 队列。

下一主题IAM 角色用例