【发布时间】:2017-10-28 15:45:58
【问题描述】:
我已设置 Amazon Simple AD 并为 AD 用户分配了特定角色,使他们能够访问 AWS 控制台。我正在尝试找到一种方法,可以让相同的用户以编程方式访问 AWS 资源。基本上如何才能让这些简单的 AD 用户获得访问密钥和密钥?
【问题讨论】:
标签: amazon-web-services amazon-iam
我已设置 Amazon Simple AD 并为 AD 用户分配了特定角色,使他们能够访问 AWS 控制台。我正在尝试找到一种方法,可以让相同的用户以编程方式访问 AWS 资源。基本上如何才能让这些简单的 AD 用户获得访问密钥和密钥?
【问题讨论】:
标签: amazon-web-services amazon-iam
AWS Simple AD 用户不是 AWS IAM 用户。这就是区别。只有 IAM 用户可以获得用于访问 AWS API 的密钥。
上述语句有一个例外 - 如果您在 IAM 中设置了联合身份提供商。有许多受支持的联合身份提供程序使用 SAML(OIDC 也可以),但由于您已经拥有一个简单 AD,您不妨使用 ADFS。设置起来有点麻烦,但 AWS 最近发布了一个预制的 CloudFormation 模板,专门用于部署 ADFS:http://docs.aws.amazon.com/quickstart/latest/wap-adfs/welcome.html
一旦您设置了 ADFS 并将其映射到您的 AD 用户...他们仍然无法获取 API 的访问密钥!...但他们可以使用联合身份验证通过 AWS API 以他们自己的身份进行身份验证:
PowerShell(有用的部分超过一半):http://docs.aws.amazon.com/powershell/latest/userguide/saml-pst.html
【讨论】:
您不能使用密钥对(访问密钥和秘密密钥)登录 AWS 控制台 (UI)。您可以为此目的创建用户并生成密码(与密钥对不同)。我的理解是密钥对仅用于编程目的,您可以将它们用于 SDK、AWS API 和 AWS CLI。
要允许 AD 用户(和密码)登录 AWS 控制台,您必须实施/启用联合,但这并不像您想象的那么简单。我找到了这个指南,希望对你有帮助! Enabling Federation to AWS Using Windows Active Directory, ADFS, and SAML 2.0
【讨论】: