管理身份和访问权限的安全控制建议 - AWS 规范性指导

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

管理身份和访问权限的安全控制建议

您可以在中创建身份 AWS,也可以连接外部身份源。通过 AWS Identity and Access Management (IAM) 策略,您可以向用户授予必要的权限,以便他们可以访问或管理 AWS 资源和集成应用程序。有效的身份和访问管理有助于验证适当的人员和机器是否可以在适当的条件下访问正确的资源。Well AWS -Architected Fram ework 提供了管理身份及其权限的最佳实践。最佳做法的示例包括依赖集中式身份提供商和使用强大的登录机制,例如多因素身份验证 (MFA)。本节中的安全控制措施可以帮助您实施这些最佳实践。

监控和配置 root 用户活动的通知

首次创建时 AWS 账户,您首先会使用名为 root 用户的单一登录身份。默认情况下,root 用户对账户中的所有 AWS 服务 资源拥有完全访问权限。您应该严格控制和监控 root 用户,并且只能将其用于需要根用户凭据的任务

有关更多信息,请参阅以下资源:

请勿为根用户创建访问密钥

根用户是 AWS 账户中权限最高的用户。禁用 root 用户的编程访问权限有助于降低用户凭据意外泄露以及云环境随后受到破坏的风险。我们建议您创建并使用 IAM 角色作为临时凭证,用于访问您的 AWS 账户 和资源。

有关更多信息,请参阅以下资源:

为根用户启用 MFA

我们建议您为根用户和 IAM 用户启用多重身份验证 (MFA) 设备。 AWS 账户 这提高了安全门槛 AWS 账户 ,可以简化访问管理。由于 root 用户是可以执行特权操作的高权限用户,因此要求根用户使用 MFA 至关重要。您可以使用基于时间的一次性密码 (TOTP) 算法、FIDO 硬件安全密钥或虚拟身份验证器应用程序生成数字代码的硬件 MFA 设备。

2024 年,将需要 MFA 才能访问任何根用户。 AWS 账户有关更多信息,请参阅安全博客中的设计安全:在 2024 年 AWS 提高 MFA 要求。 AWS 我们强烈建议您扩展这种安全措施,并要求您 AWS 环境中的所有用户类型都使用 MFA。

如果可能,我们建议您为 root 用户使用硬件 MFA 设备。虚拟 MFA 无法提供与硬件 MFA 设备相同的安全水平。您可以在等待硬件购买批准或交付时使用虚拟 MFA。

在管理数百个账户的情况下 AWS Organizations,根据组织的风险承受能力,可能无法扩展为对组织单位 (OU) 中每个账户的根用户使用基于硬件的 MFA。在这种情况下,您可以在 OU 中选择一个充当 OU 管理账户的账户,然后禁用该 OU 中其他账户的 root 用户。默认情况下,OU 管理账户无权访问其他账户。通过提前设置跨账户访问权限,您可以在紧急情况下从 OU 管理账户访问其他账户。要设置跨账户访问权限,请在成员账户中创建一个 IAM 角色,然后定义策略,以便只有 OU 管理账户中的根用户才能担任此角色。有关更多信息,请参阅 IAM 文档中的教程: AWS 账户 使用 IAM 角色委派访问权限

我们建议您为根用户证书启用多个 MFA 设备。您最多可以注册八台任意组合的 MFA 设备。

有关更多信息,请参阅以下资源:

遵循 IAM 安全最佳实践

IAM 文档包括旨在帮助您保护 AWS 账户 和资源的最佳实践列表。它包括根据最小权限原则配置访问和权限的建议。IAM 安全最佳实践的示例包括配置联合身份验证、要求 MFA 和使用临时证书。

有关更多信息,请参阅以下资源:

授予最低权限权限

最低权限是指仅授予执行任务所需的权限的做法。为此,您可以定义在特定条件下可以对特定资源采取的操作。

基于属性的访问控制 (ABAC) 是一种基于属性(例如标签)定义权限的授权策略。您可以使用群组、身份和资源属性来大规模动态定义权限,而不是为单个用户定义权限。例如,您可以使用 ABAC 仅允许一组开发人员访问与其项目关联的特定标签的资源。

有关更多信息,请参阅以下资源:

在工作负载级别定义权限护栏

使用多账户策略是最佳实践,因为它提供了在工作负载级别定义防护栏的灵活性。 AWS 安全参考架构提供了有关如何构建账户的规范性指导。这些帐户在中作为一个组织进行管理 AWS Organizations,并将这些帐户分组为组织单位 (OUs)

AWS 服务,例如 AWS Control Tower,可以帮助您集中管理整个组织的控制措施。我们建议您为组织内的每个账户或组织单位定义明确的目的,并根据该目的应用控制措施。 AWS Control Tower 实施预防性、侦查性和主动控制措施,帮助您管理资源并监控合规性。预防性控制旨在防止事件的发生。侦探控件旨在在事件发生后进行检测、记录和警报。主动控制旨在通过在资源调配之前对其进行扫描来防止部署不合规的资源。

有关更多信息,请参阅以下资源:

定期轮换 IAM 访问密钥

对于需要长期凭证的用例,最好更新访问密钥。我们建议每 90 天或更短时间内轮换一次访问密钥。轮换访问密钥可以降低使用与被盗或已终止账户关联的访问密钥的风险。它还使用可能已丢失、泄露或被盗的旧密钥来防止访问。请务必在轮换访问密钥后更新应用程序。

有关更多信息,请参阅以下资源:

确定与外部实体共享的资源

外部实体是指 AWS 组织之外的资源、应用程序、服务或用户,例如另一个用户、根用户 AWS 账户、IAM 用户或角色、联合用户、或匿名(或未经身份验证)用户。 AWS 服务最佳安全做法是使用 IAM Access Analyzer 来识别您的组织和账户中与外部实体共享的资源,例如亚马逊简单存储服务 (Amazon S3) 存储桶或 IAM 角色。这可以帮助您识别对资源和数据的意外访问,这是一种安全风险。

有关更多信息,请参阅以下资源: