切换到角色(控制台) - AWS Identity and Access Management

切换到角色(控制台)

角色 指定可用于访问所需的 AWS 资源的一组权限。在这种意义上,它类似于 AWS Identity and Access Management 中的用户 (IAM)。作为用户登录时,您会获取一组特定权限。但是,您没有登录到角色,不过一旦登录,您就可以切换为角色。这会临时搁置原始用户权限,而向您提供分配给角色的权限。角色可以在您自己的账户中或任何其他 AWS 账户 中。有关角色、其权益以及如何创建角色的更多信息,请参阅IAM 角色创建 IAM 角色

重要

您的 用户权限和切换为的角色的权限不会累积。一次只有一组权限处于活动状态。切换到一个角色后,您将临时放弃用户权限并使用分配给该角色的权限。退出该角色后,您的用户权限将自动恢复。

当您在 AWS Management Console中切换角色时,控制台总是使用您的原始凭证对切换操作进行授权。无论您作为 IAM 用户、IAM Identity Center 中的用户、SAML 联合角色还是 Web 联合身份角色登录,上述情形均适用。例如,如果您切换到角色 A,则 IAM 使用您的原始用户或联合角色凭证确定是否允许您担任角色 A。如果随后在使用角色 A 时尝试切换到角色 B,AWS 仍会使用您的原始用户或联合角色凭证对切换进行授权,而不是使用角色 A 的凭证。

有关在控制台中切换角色的需知信息

此部分提供有关如何使用 IAM 控制台切换到某个角色的更多信息。

注意:
  • 如果您以 AWS 账户根用户身份登录,则无法切换角色。以 IAM 用户、IAM Identity Center 中的用户、SAML 联合角色或 Web 联合身份角色登录时,您可以切换角色。

  • 您无法将 AWS Management Console中的角色切换到需要 ExternalId 值的角色。您只能通过调用支持 ExternalId 参数的 AssumeRole API 来切换到此类角色。

  • 如果管理员为您提供了链接,请选择该链接,然后跳到以下过程中的步骤 步骤 5。您可以通过该链接转到相应的网页,并为您填写账户 ID(或别名)和角色名称。

  • 您可以手动构造链接,然后跳到以下过程中的步骤步骤 5。要构造您的链接,请使用以下格式:

    https://signin.aws.amazon.com/switchrole?account=account_id_number&roleName=role_name&displayName=text_to_display

    在其中替换以下文本:

    • account_id_number - 管理员向您提供的 12 位的账户标识符。或者,您的管理员可能创建账户别名,使得 URL 包含您的账户名称而不是账户 ID。有关更多信息,请参阅《AWS 登录 用户指南》中的用户类型

    • role_name - 要代入的角色的名称。您可以从角色 ARN 的结尾获取此名称。例如,从以下角色 ARN 提供 TestRole 角色名称:arn:aws:iam::123456789012:role/TestRole

    • (可选)text_to_display - 您希望此角色处于活动时显示在导航栏中以替代用户名的文本。

  • 您可以通过以下过程使用管理员提供的信息来手动切换角色。

预设情况下,切换角色时,AWS Management Console 会话将持续 1 小时。预设情况下,IAM 用户会话为 12 小时。在控制台内切换角色的 IAM 用户被授予角色最大会话持续时间或用户会话中的剩余时间(以较少者为准)。例如,假定角色的最长会话持续时间为 10 小时。当 IAM 用户决定切换到该角色时,已登录控制台 8 小时。用户会话还剩 4 小时,因此允许的角色会话持续时间为 4 小时。下表显示了如何在控制台中切换角色时确定 IAM 用户的会话持续时间。

IAM 用户控制台角色会话持续时间
IAM 用户会话剩余时间... 角色会话持续时间...
小于角色最长会话持续时间 用户会话中的剩余时间
大于角色最长会话持续时间 等于最长会话持续时间值
等于角色最长会话持续时间 等于最长会话持续时间值(近似值)
注意

某些 AWS 服务控制台可以在角色会话过期时自动续订角色会话,而无需您执行任何操作。有些可能会提示您重新加载浏览器页面以重新验证您的会话。

要排除您在担任角色时可能遇到的常见问题,请参阅 我无法代入角色

切换为角色(控制台)
  1. 以 IAM 用户登录 AWS Management Console,然后通过以下网址打开 IAM 控制台:https://console.aws.amazon.com/iam/

  2. 在 IAM 控制台中,在右上角的导航栏上选择您的用户名。它通常类似于:username@account_ID_number_or_alias

  3. 选择 Switch Role。如果这是您首次选择该选项,则会显示一个包含更多信息的页面。在阅读该信息后,请选择切换角色。如果清除您的浏览器 Cookie,则此页面会重新再出现。

  4. Switch Role 页面上,键入账户 ID 号或账户别名以及管理员提供的角色的名称。

    注意

    如果您的管理员创建了包含路径的角色(如 division_abc/subdivision_efg/roleToDoX),则必须在 Role 框中键入完整路径和名称。如果您仅键入角色名称,或组合的 PathRoleName 超过 64 个字符,角色切换将失败。这是存储角色名称的浏览器 Cookie 的限制。如果发生这种情况,请与您的管理员联系,并要求他们减小路径和角色名称大小。

  5. (可选)选择 Display name(显示名称)。键入您希望此角色处于活动时显示在导航栏上以替代用户名的文本。系统会基于账户和角色信息提供建议名称,但是您可以将它更改为对您有意义的任何名称。您还可以选择用于突出显示名称的样色。名称和颜色可帮助提醒您此角色处于活动状态的时间,这将更改您的权限。例如,对于向您提供对测试环境的访问权限的角色,您可以将 Display name(显示名称)指定为 Test,并选择绿色的 Color(颜色)。对于向您授予对生产环境的访问权限的角色,您可以将 Display name(显示名称)指定为 Production,并选择红色作为 Color(颜色)。

  6. 选择 Switch Role。显示名称和颜色会在导航栏上替换您的用户名,您可以开始使用角色向您授予的权限。

提示

您使用的最后几个角色将显示在菜单上。下次需要切换到其中的一个角色时,您可以直接选择所需的角色。只有在菜单上未显示角色时,您才需要手动键入账户和角色信息。

停止使用角色(控制台)
  1. 在 IAM 控制台中,在右上角的导航栏中选择角色的 Display Name(显示名称)。它通常类似于:rolename@account_ID_number_or_alias

  2. 选择 Back to username (返回 username)。角色和其权限会停用,与您的 IAM 用户和组关联的权限会自动恢复。

    例如,假设您使用用户名 123456789012 登录账号 RichardRoe。在使用 AdminRole 角色后,您要停止使用该角色并返回到您的原始权限。要停止使用某个角色,请选择 AdminRole @ 123456789012,然后选择 Back to RichardRoe(返回至 RichardRoe)

    
            Richard Roe 停止使用 AdminRole 角色