STS 如何签发临时凭证
了解支撑每个角色的安全令牌服务。
STS 如何签发临时凭证 是 CoddyKit 上的免费 Cloud & IT Cert Prep 课时。 这是第 1 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Cloud & IT Cert Prep 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Cloud & IT Cert Prep 课程共包含 4 节课。
令牌服务
安全令牌服务(STS)是用于签发临时安全凭证的 AWS 服务。每当角色被代入或身份经过联合认证时,STS 都会发放短期凭证,而不是永久密钥。理解 STS 是通过考试的核心,因为临时凭证几乎支撑着 AWS 上所有安全访问模式。
临时凭证是什么
STS 凭证由三部分组成:访问密钥 ID、私密访问密钥和会话令牌。会话令牌是临时凭证区别于长期密钥的关键;它必须随每个签名请求一起发送。三者会在设定的生命周期结束后同时过期,因此凭证本身具有限制性。
临时凭证为何更安全
由于临时凭证会自动过期(有效期从 15 分钟到 12 小时不等),因此可以大幅限制泄露造成的损害。您不需要手动轮换密钥,也没有永久凭证可供窃取。这就是 AWS 几乎在所有场景中都建议使用临时凭证而不是长期访问密钥的原因,考试也会反复强调这一点。
核心 STS API
STS 提供少量操作:
- AssumeRole — 代入同一账户或其他账户中的角色。
- AssumeRoleWithSAML — 通过 SAML 身份提供商进行联合认证。
- AssumeRoleWithWebIdentity — 通过 OIDC/网页身份进行联合认证。
- GetSessionToken / GetFederationToken — 用于 MFA 和 IAM 用户联合认证。
AssumeRole 流程
最常见的调用是 AssumeRole。调用方已经完成身份验证后请求代入某个角色;STS 会验证该角色的信任策略是否允许调用方,然后返回携带该角色权限的临时凭证。调用方可以使用这些凭证直到它们过期,之后再次代入角色以刷新凭证。
调用 AssumeRole
此 CLI 调用会代入一个角色并返回临时凭证。调用时必须提供角色 ARN 和会话名称;会话名称会出现在 CloudTrail 中,用于审计。
aws sts assume-role \
--role-arn arn:aws:iam::123456789012:role/Audit \
--role-session-name security-review区域端点和全局端点
STS 过去使用单一的全局端点,但 AWS 现在也提供区域 STS 端点。使用区域端点可以降低延迟并提高弹性,某些合规配置还要求使用区域端点。较新的区域无法通过全局端点访问,因此启用区域 STS 是推荐的配置方式。
调用方身份
GetCallerIdentity 操作会返回发起调用的主体的账户、用户 ID 和 ARN。它不需要特殊权限,是确认当前凭证代表哪个身份的首选方法;在调查过程中调试代入角色的会话时尤其有用。
aws sts get-caller-identityCloudTrail 中的凭证
每次 STS 调用都会记录在 CloudTrail 中,包括谁代入了哪个角色以及他们选择的会话名称。通过这些记录,调查人员可以准确追踪哪个用户或服务获取了临时凭证,以及之后执行了哪些操作。含义明确的会话名称会让这类审计更加有用。
实际使用会话令牌
使用临时凭证的应用程序必须在每个请求中发送会话令牌;配置完成后,AWS SDK 和 CLI 会自动执行此操作。如果您在使用临时凭证时遇到身份验证失败,缺少会话令牌或会话令牌不匹配是经常需要检查的原因。
让 STS 发挥作用
STS 是角色和联合认证背后的引擎:它会发放由访问密钥、私密访问密钥和会话令牌组成的短期凭证,这些凭证会自行过期,比永久密钥安全得多。请使用 AssumeRole 系列操作,优先使用区域端点,为会话设置有意义的名称以便在 CloudTrail 中审计,并尽可能用临时凭证替代长期凭证。
快速检查
测试您对 STS 基础知识的掌握情况。
回顾
安全令牌服务(STS)会签发临时凭证:访问密钥、私密密钥和会话令牌,有效期为 15 分钟至 12 小时。核心 API 包括 AssumeRole、AssumeRoleWithSAML 和 AssumeRoleWithWebIdentity。请优先使用区域性端点,为 CloudTrail 使用有意义的会话名称,并用临时密钥替代长期密钥。
常见问题解答
「STS 如何签发临时凭证」课时是免费的吗?
是的 — 「STS 如何签发临时凭证」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Cloud & IT Cert Prep 课程的其余内容,请升级到 CoddyKit PRO。 Cloud & IT Cert Prep 课程共包含 4 节课。
「STS 如何签发临时凭证」这节课中我会学到什么?
了解支撑每个角色的安全令牌服务。 你通过在浏览器中直接运行的动手代码来练习 Cloud & IT Cert Prep,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 Cloud & IT Cert Prep 需要有经验吗?
无需任何先前经验。CoddyKit 上的 Cloud & IT Cert Prep 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 1 节课,共 4 节。
「STS 如何签发临时凭证」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 Cloud & IT Cert Prep 课中编写并运行代码吗?
能。每节 Cloud & IT Cert Prep 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。
此课程中的所有课时
- STS 如何签发临时凭证
- AssumeRole 与会话生命周期
- 外部 ID 与困惑代理问题
- 会话策略与基于标签的范围限定