概览
本实验将指导您使用 AWS Identity and Access Management (IAM) 配置 Active Directory 联合身份验证服务 (AD FS),从而让 Active Directory 用户和组能够访问 AWS 管理控制台。您将使用 AWS 支持的安全断言标记语言 (SAML),这是许多身份提供商 (IdP) 使用的一种开放标准。此功能启用了联合 Single Sign-On (SSO),使用户可以使用来自符合 SAML 标准的 IdP(如 AD FS)的断言,从而登录控制台或对 AWS 应用程序编程接口 (API) 进行编程式调用。使用身份联合,外部身份或联合身份用户可以安全访问 AWS 账户中的资源,无需您创建 IAM 用户。
目标
完成本实验后,您将能够:
- 在 Windows 服务器上安装并设置 AD FS。
- 使用现有的 Active Directory 服务器启用对 AWS 管理控制台的联合身份访问。
- 在 IAM 中创建新角色并将这些角色映射到您的联合身份用户。
- 允许联合身份用户访问 AWS 管理控制台。
技术性知识先决条件
要想成功完成本实验,您应该熟悉基本的 Windows Server 管理,还应该熟练掌握常用的联合身份和 IdP 的技术,特别是 SAML、轻型目录访问协议 (LDAP)、Active Directory 和 IAM。
时长
完成本实验大约需要 60 分钟。
注意:在您选择 Start Lab(启动实验)后,部署环境大约需要 10 分钟。
图标键
本实验中使用了不同图标,以提醒大家注意各种类型的说明和备注。下面的列表解释了每个图标的用途:
- 命令:您必须运行的命令。
- 预期输出:您可以用来验证命令或已编辑文件输出的示例输出。
- 注意:一项提示、技巧或重要指导。
AD FS 联合身份验证流程
以下流程详细说明了用户如何使用 Active Directory 和 AD FS 向 AWS 进行身份验证:
第 1 步:当用户打开其域内的 AD FS 示例站点 (https://Fully.Qualified.Domain.Name.Here/adfs/ls/IdpInitiatedSignOn.aspx) 时,这一流程就启动了。当您安装 AD FS 时,您的默认网站会得到一个名为 AD FS 的新虚拟目录,其中包含此页面。
第 2 步:登录页面根据 Active Directory 对用户进行身份验证。系统可能会提示用户输入 Active Directory 用户名和密码,具体取决于用户使用的浏览器。
第 3 步:用户的浏览器以身份验证响应的形式从 AD FS 接收 SAML 断言。
第 4 步:用户的浏览器将 SAML 断言发布到 SAML 的 AWS 登录终端节点 (https://signin.aws.amazon.com/saml)。在后台,登录终端节点使用 AssumeRoleWithSAML API 请求临时安全凭证,然后构建用于 AWS Management Console 的登录 URL。
第 5 步:用户的浏览器接收登录 URL 并重定向到控制台。
预置的基础设施
为了帮助您专注于本实验的主题,我们为您提供了一个自动生成的环境,其中包含一个预安装的 Active Directory 域控制器,域名为 mydomain.local。
该域控制器实例位于私有子网中。此外,还有一个带有网络地址转换 (NAT) 实例和远程桌面网关(RD 网关)实例的公有子网。公有子网也称为 DMZ。Active Directory 还按需预置了路由表、子网和互联网网关。下图显示了这一设置,包括您将在本实验中在私有子网中启用的 AD FS 实例:
NAT 实例允许针对私有子网中实例的出站互联网访问(例如用于 Windows 更新或连接 IAM)。RD 网关实例只允许通过远程桌面协议 (RDP) 对私有子网中的实例进行入站管理访问。
注意:要登录私有子网中的实例,必须先使用 RDP 客户端连接到面向公众的 RD 网关实例。然后,您可以使用私有 IP 地址打开从 RD 网关实例到私有子网中的域控制器实例或 AD FS 实例的 RDP 连接。在这种情况下,RD 网关实例充当堡垒(跳板)主机。