0Pricing
Cloud & IT Cert Prep · 课时

AssumeRole 与会话生命周期

了解主体如何用自身身份换取角色权限。

AssumeRole 与会话生命周期 是 CoddyKit 上的免费 Cloud & IT Cert Prep 课时。 这是第 2 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Cloud & IT Cert Prep 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Cloud & IT Cert Prep 课程共包含 4 节课。

用身份交换权限

AssumeRole 操作允许委托主体暂时用自身身份交换某个角色的权限。结果是一个有时间限制的会话。控制会话的持续时间及其权限范围是 SCS-C02 的常见考点,因为会话生命周期会直接影响安全暴露程度。

被担任角色的会话

AssumeRole 成功后,调用方会以被担任角色的会话身份运行,其 ARN 类似于 arn:aws:sts::ACCOUNT:assumed-role/RoleName/SessionName。在此期间,调用方拥有该角色的权限,而不再拥有其原始身份的权限。您传入的会话名称会被保留,以便审计。

持续时间(秒)

DurationSeconds 参数用于设置会话的持续时间,范围从900 秒(15 分钟)到由角色定义的最大值。会话越短,泄露的凭证保持有效的时间窗口就越小,因此最小权限原则倾向于使用实际可行的最短持续时间。

最大会话持续时间

每个角色都有一个 MaximumSessionDuration 设置(1 到 12 小时)。如果请求的 DurationSeconds 超过此值,请求就会被拒绝。为敏感角色设置合理的最大值,可以限制任何一次担任角色操作的最长持续时间;对于高风险角色,您可以针对风险程度调整这一控制措施。

角色链限制

当一个被担任的角色再去担任另一个角色时,这称为角色链。无论角色配置的最大值是多少,AWS 都会将角色链中的会话限制为最长一小时。了解这一上限,就能解释为什么角色形成链后,一些长时间请求会失败;这是一个容易忽略的考试细节。

刷新凭证

由于会话会过期,应用程序必须重新担任该角色才能继续运行。对于实例配置文件和已配置的角色配置文件,SDK 会透明地处理这一过程,在旧凭证过期前获取新凭证。现有会话无法延长;您只能获取一个全新的会话。

AssumeRole 参数

除了持续时间之外,AssumeRole 还接受策略或 PolicyArns(用于缩小权限范围的会话策略)、标签(用于 ABAC 的会话标签),以及用于 MFA 的 SerialNumber 和 TokenCode。这些参数让您可以在每次担任角色发生时,精确地限定并保护该操作。

要求 MFA

角色的信任策略可以要求 MFA;在这种情况下,AssumeRole 必须包含 MFA 设备 ARN 和当前令牌代码。这样可以确保攻击者仅凭窃取的凭证无法担任特权角色。对于敏感角色,将短会话与 MFA 结合使用是一项有力且受到考试认可的控制措施。

"Condition": {
  "Bool": { "aws:MultiFactorAuthPresent": "true" }
}

撤销活动会话

您无法删除某个单独的临时凭证,但可以通过附加内联策略,使用 aws:TokenIssueTime 条件拒绝在指定时间之前签发的令牌所执行的操作,从而撤销某个角色的所有活动会话。控制台中的“撤销活动会话”按钮执行的正是这一操作,是事件响应中的重要工具。

短会话的作用

较短的会话生命周期意味着,即使临时凭证泄露,也会很快失效。将其与撤销机制、MFA 和最小权限会话策略结合起来,可以大幅缩小攻击窗口。考试通常倾向于选择能够尽量缩短凭证有效时间的答案。

综合运用

AssumeRole 会创建一个有时间限制的会话,其持续时间由 DurationSeconds 控制,且不得超过角色的 MaximumSessionDuration;角色链中的会话最长为一小时。请使用策略、标签和 MFA 限定每个会话的权限范围,并利用 TokenIssueTime 撤销方法立即终止已遭入侵的会话。短时、范围明确的会话是更安全的默认选择。

快速检查

测试您对会话生命周期的了解。

回顾

AssumeRole 会创建一个被担任角色的会话,持续时间从 15 分钟到角色的 MaximumSessionDuration(最长 12 小时)不等;角色链中的会话最长为一小时。请使用会话策略、标签和 MFA 限定会话范围。使用 aws:TokenIssueTime 拒绝方法撤销已遭入侵的会话。优先使用短时且范围明确的会话。

常见问题解答

「AssumeRole 与会话生命周期」课时是免费的吗?

是的 — 「AssumeRole 与会话生命周期」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Cloud & IT Cert Prep 课程的其余内容,请升级到 CoddyKit PRO。 Cloud & IT Cert Prep 课程共包含 4 节课。

「AssumeRole 与会话生命周期」这节课中我会学到什么?

了解主体如何用自身身份换取角色权限。 你通过在浏览器中直接运行的动手代码来练习 Cloud & IT Cert Prep,全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 Cloud & IT Cert Prep 需要有经验吗?

无需任何先前经验。CoddyKit 上的 Cloud & IT Cert Prep 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 2 节课,共 4 节。

「AssumeRole 与会话生命周期」课时需要多长时间?

大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。

我能在这节 Cloud & IT Cert Prep 课中编写并运行代码吗?

能。每节 Cloud & IT Cert Prep 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。

此课程中的所有课时

  1. STS 如何签发临时凭证
  2. AssumeRole 与会话生命周期
  3. 外部 ID 与困惑代理问题
  4. 会话策略与基于标签的范围限定
← 返回 Cloud & IT Cert Prep