本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用 Amazon Quick Sight 可视化所有 AWS 账户的 IAM 凭证报告
Parag Nagwekar 和 Arun Chandapillai,Amazon Web Services
Summary
警告:IAM 用户具有长期凭证,这会带来安全风险。为帮助减轻这种风险,我们建议仅向这些用户提供执行任务所需的权限,并在不再需要这些用户时将其移除。 |
|---|
您可以使用 AWS Identity and Access Management(IAM)凭证报告,帮助您满足贵组织的安全、审计和合规要求。凭证报告提供您 AWS 账户中所有用户的列表,并显示他们的凭证状态,如密码、访问密钥和多重身份验证(MFA)设备。您可以为由 AWS Organizations 管理的多个 AWS 账户使用凭证报告。
此模式包括步骤和代码,可帮助您使用 Amazon Quick Sight 控制面板为组织中的所有 AWS 账户创建和共享 IAM 证书报告。您可以与组织中的利益相关者共享控制面板。这些报告可帮助您的组织实现以下目标业务成果:
识别与 IAM 用户相关的安全事件
追踪 IAM 用户向单点登录(SSO)身份验证的实时迁移
追踪 IAM 用户访问的 AWS 区域
保持合规
与其他利益相关者共享信息
先决条件和限制
先决条件
架构
技术堆栈
Amazon Athena
Amazon EventBridge
Amazon Quick Sight
Amazon Simple Storage Service(Amazon S3)
AWS Glue
AWS Identity and Access Management(IAM)
AWS Lambda
AWS Organizations
目标架构
下图显示了用于设置从多个 AWS 账户捕获 IAM 凭证报告数据的工作流架构。

EventBridge 每天调用 Lambda 函数。
Lambda 函数在整个组织的每个 AWS 账户中扮演 IAM 角色。然后,该函数创建 IAM 凭证报告,并将报告数据存储在集中式 S3 存储桶中。必须在 S3 存储桶上启用加密,并停用公共访问。
AWS Glue 爬网程序每天都会爬取 S3 存储桶,并相应地更新 Athena 表。
Quick Sight 导入和分析证书报告中的数据,并构建一个可由利益相关者可视化并与其共享的仪表板。
工具
Amazon Web Services
Amazon Athena 是一种交互式查询服务,方便使用标准 SQL 分析 Amazon S3 的数据。
Amazon EventBridge 是一项无服务器事件总线服务,可帮助您将应用程序与来自各种来源的实时数据连接起来。例如,Lambda 函数、使用 API 目标的 HTTP 调用端点或其他 AWS 账户中的事件总线。
Amazon Quick Sight 是一种云级商业智能(BI)服务,可用于在单独的控制面板中可视化、分析和报告数据。Quick Sight 是 Amazon Quick Suite 中的核心组件,提供交互式数据可视化、SPICE 内存分析、嵌入式分析和仪表板共享。
AWS Identity and Access Management (AWS IAM) 通过控制验证和授权使用您 AWS 资源的用户,帮助您安全地管理对您 AWS 资源的访问。
AWS Lambda 是一项计算服务,可帮助您运行代码,而无需预置或管理服务器。它仅在需要时运行您的代码,并且能自动扩缩,因此您只需为使用的计算时间付费。
代码
此模式的代码可在 GitHub getiamcredsreport-allaccounts-org
操作说明
| Task | 说明 | 所需技能 |
|---|---|---|
设置 Amazon Quick Suite 企业版。 |
| AWS 管理员、AWS DevOps、云管理员、云架构师 |
将 Amazon Quick Sight 与亚马逊 S3 和 Athena 集成。 | 在部署 AWS 堆栈之前,您必须授权 Quick Sight 使用 Amazon S3 和 Athena。 CloudFormation | AWS 管理员、AWS DevOps、云管理员、云架构师 |
| Task | 说明 | 所需技能 |
|---|---|---|
克隆 GitHub 存储库。 |
| AWS 管理员 |
部署基础设施。 |
| AWS 管理员 |
创建 IAM 权限策略。 | 使用以下权限,为组织中的每个 AWS 账户创建 IAM 策略:
| AWS DevOps、云管理员、云架构师、数据工程师 |
创建带有信任策略的 IAM 角色。 |
重要请将 注意各个组织通常使用自动化技术,为他们的 AWS 账户创建 IAM 角色。建议您使用此自动化技术(如果有)。或者,您可以使用代码存储库中的 | 云管理员、云架构师、AWS 管理员 |
配置 Amazon Quick Sight 以可视化数据。 |
| AWS DevOps、云管理员、云架构师、数据工程师 |
附加信息
其他注意事项
请考虑以下事项:
使用 CloudFormation 部署基础设施后,您可以等待在 Amazon S3 中创建并由 Athena 分析的报告,直到 Lambda 和 AWS Glue 按计划运行。或者,您可手动运行 Lambda 在 Amazon S3 中获取报告,然后运行 AWS Glue 爬网程序,以获取根据数据创建的 Athena 表。
Quick Suite 是一款功能强大的工具,可根据您的业务需求分析和可视化数据。您可以使用 Quick Suite 中的参数根据您选择的数据字段来控制控件数据。此外,您还可以使用 Quick Suite 分析从数据集中创建参数(例如,账户
partition_0partition_1、日期和用户字段,例如、user和),以添加帐户、日期和用户的参数控件。要构建您自己的 Quick Sight 仪表板,请参阅 AWS Workshop Studio 网站上的快速套件研讨会
。 要查看 Quick Sight 仪表板示例,请参阅 GitHub getiamcredsreport-allaccounts-org
代码存储库。
目标业务成果
您可以使用此模式来实现以下目标业务成果:
识别与 IAM 用户相关的安全事件 — 使用单一控制面板调查组织每个 AWS 账户的每个用户。您可跟踪 IAM 用户最近访问的各个 AWS 区域及其使用的服务的趋势。
跟踪 IAM 用户向 SSO 身份验证的实时迁移 — 通过使用 SSO,用户可使用单个凭证登录一次并访问多个 AWS 账户和应用程序。如果您计划将 IAM 用户迁移至 SSO,此模式可以帮助您过渡到 SSO,并追踪所有 AWS 账户中的所有 IAM 用户凭证使用情况(例如访问 AWS 管理控制台或访问密钥的使用情况)。
追踪 IAM 用户访问的 AWS 区域 — 您可出于各种目的控制 IAM 用户对区域的访问权限,例如数据主权和成本控制。您还可追踪任何 IAM 用户对区域的使用情况。
保持合规 — 遵循最低权限原则,您只能授予执行特定任务所需 IAM 权限。此外,您还可以跟踪对 Amazon Web Services 的访问权限、AWS 管理控制台以及长期凭证的使用情况。
与其他利益相关者共享信息 — 您可以与其他利益相关者共享精心策划的控制面板,无需授予他们访问 IAM 凭证报告或 AWS 账户的权限。