You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何无需长期access_key通过AWS角色获取用户临时access_key

无长期Access Key的AWS跨账户临时访问实现方案

完全可以抛弃Access账户下的长期静态AK/SK实现需求,基于AWS原生身份能力就能拿到访问Prod环境的短生命周期临时凭证,默认所有临时凭证最长有效期12小时,可按需压缩到15分钟级别,没有长期密钥轮换的运维负担,符合ephemeral权限的设计要求。

方案1:IAM Identity Center 生产级首选方案

  • 直接把Access账户作为Identity Center的实例管理账号,对接企业内部身份源(企业AD、自建身份系统、商用身份服务均可),不需要在Access账户给任何个人用户创建带长期AK的IAM用户,用户全程用自己的企业账号完成身份校验,不需要持有AWS侧的长期静态密钥。
  • 提前给对应人员配置Prod账户的权限集,映射好Prod账户内的对应操作角色。用户侧只需要在AWS CLI v2中做一次基础配置,执行aws sso login完成网页端身份认证后,CLI会自动拉取对应Prod账户角色的临时AK/SK、SessionToken,凭证到期自动失效,全程不会落地长期密钥。
  • CLI配置示例,配置文件~/.aws/config中不需要写入任何密钥信息:
[profile prod-env]
sso_start_url = 自身部署的Identity Center访问入口
sso_region = Identity Center部署的AWS区域
sso_account_id = Prod账户的12位ID
sso_role_name = Prod账户中授权的跨账户角色名
sso_registration_scopes = sso:account:access
  • 可以直接在权限集层面配置会话有效期、权限边界,比如强制普通开发人员的凭证1小时失效,运维人员凭证最长4小时失效,运维侧只需要维护人员和权限的映射关系,不需要处理任何AK轮换工作。

方案2:SAML/OIDC联邦身份直连 轻量场景适用

  • 如果团队规模小,不想部署Identity Center,可以直接在Prod账户内创建SAML/OIDC类型的身份提供商,信任企业内部身份系统的认证断言,不需要经过Access账户的IAM用户做权限中转。
  • 用户完成企业身份认证后,直接调用STS的AssumeRoleWithSAML或者AssumeRoleWithWebIdentity接口,就能直接拿到Prod账户对应角色的临时访问凭证,全程不需要Access账户存在任何长期AK。
  • 注意配置时要强制开启MFA校验,收紧断言的有效时长,避免认证断言泄露带来的越权风险。

方案3:现有架构最小改造方案

  • 如果暂时不想调整现有的Access/Prod两账户跨角色架构,可以直接删除Access账户下所有IAM用户的长期AK,只给用户保留控制台登录权限:用户登录Access账户控制台后,要么直接在控制台生成最长12小时有效期的临时会话凭证,要么基于控制台登录后的Web身份会话调用aws sts get-session-token拿到Access账户的临时凭证,再用这个临时凭证去AssumeRole获取Prod账户的访问权限。
  • 这个方案几乎不需要改造现有权限配置,改造完成后Access账户内不存在任何长期静态AK,所有用于跨账户访问的基础凭证本身就是短时效的,到期自动失效,完全省去定期轮换长期AK的运维工作。

生产环境落地建议:所有非紧急运维场景的临时凭证有效期建议设置为1小时以内,所有身份认证环节强制开启MFA,严格遵循权限最小化原则配置角色策略,从根源上消除长期密钥泄露的安全隐患。

内容的提问来源于stack exchange,提问作者hahahahey

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.30 02:39:17