我一直在寻找将AWS(网络)控制台连接到AD或ADFS设置以管理用户的方法。在 IAM 和一些现有的 ADFS 基础设施中使用 SAML 身份提供程序相当容易。
问题在于,据我所知,以这种方式进行身份验证的用户(与普通的 AWS 用户帐户不同)没有任何方法可以拥有关联的访问密钥。访问密钥是验证 AWS CLI 等内容的关键概念,需要绑定到各个用户账户。
有哪些解决方法可以允许通过 SAML 身份提供商进行身份验证的用户仍然能够轻松使用 aws CLI?到目前为止,我唯一想到的是一些笨拙的废话,这些废话会代理 aws
cli 命令,从 aws STS 服务请求临时 1 小时凭证,将它们放入 aws 凭证文件中,然后将命令转发到普通的 AWS cli。但是,这让我想吐一点;另外,我不知道如果一个命令需要一个多小时才能完成(大型 s3 上传等),它是否会起作用。
建议?我会尝试官方的目录服务 AD 连接器,但我的理解是用户仍然只是承担 IAM 角色,最终会遇到同样的问题。
为了解决这个问题而创建的,背后有一个充满活力的开源社区。
我通过 ADFS 在 AWS CLI 的 aws-adfs 上取得了成功
存储库所有者目前也在添加对 DUO MFA 的支持。它的工作原理是将用户身份验证到您用于控制台访问的同一页面,然后抓取可用的角色。您选择一个角色,然后 aws-adfs 将默认用户设置为 sts 访问所需的凭证集。
设置默认用户后,您可以像往常一样 cli:aws s3 ls
https://github.com/venth/aws-adfs