亚马逊AWS官方博客
在亚马逊云科技上建立数据边界:概述
对于 Amazon Web Services 上的敏感数据,您应该实施安全控制措施,包括身份和访问管理、基础设施安全和数据保护。Amazon Web Services 建议您随着工作负载的增长设置多个账户,以隔离具有特定安全要求的应用程序和数据。Amazon Web Services 工具可以帮助您在多个账户之间建立数据边界,同时阻止来自组织外部的意外访问。Amazon Web Services 上的数据边界涵盖许多不同的特性和功能。根据自身的安全要求,您应该决定哪些功能适合您的组织。在此关于数据边界的第一篇博客文章中,我将讨论您可以使用哪些Amazon Identity and Access Management(IAM)特性和功能在 Amazon Web Services 上建立数据边界。后续文章将提供实施指导和 IAM 策略示例,用于建立您的身份、资源和网络数据边界。
数据边界是一组预防性防护机制,可帮助确保只有您的可信身份可访问来自预期网络的可信资源。这些术语的定义如下:
- 可信身份 — 您的 Amazon Web Services 账户中的主体(IAM 角色或用户),或代表您行事的 Amazon Web Services 服务
- 可信资源 – 您的 Amazon Web Services 账户或代表您行事的 Amazon Web Services 服务所拥有的资源
- 预期网络 – 您的本地数据中心和虚拟私有云(VPC),或代表您行事的 Amazon Web Services 服务网络
数据边界防护机制
通常将数据边界防护机制作为粗粒度控制措施实施,这些防护机制适用于各种 Amazon Web Services 账户和资源。在实施数据边界时,请考虑以下六个主要控制目标。
数据边界 | 控制目标 |
身份 | 只有可信身份可访问我的资源。 |
我的网络仅允许可信身份。 | |
资源 | 我的身份仅可访问可信资源。 |
仅可从我的网络访问可信资源。 | |
网络 | 我的身份只能从预期网络访问资源。 |
仅可从预期网络访问我的资源。 |
请注意,上表中的控制措施本质上是粗粒度的,旨在充当持续开启的防护边界。可以将数据边界视为在数据周围建立牢固的边界,以防止各种意外访问模式。尽管数据边界可以防止广泛的意外访问,但您仍然需要制定细粒度的访问控制决策。建立数据边界并不能避免使用诸如 IAM Access Analyzer 之类的工具持续微调权限,这是通往最低权限之旅的环节之一。
要在 Amazon Web Services 上实现上述控制目标,请使用三个主要功能:
- 服务控制策略(SCP) – 这是 Amazon Organizations 策略,可以使用这些策略为组织内的主体(IAM 角色或用户)设定最大可用权限。SCP 可帮助您确保自身的账户符合组织的访问控制指导方针。在数据边界环境中,您可以使用 SCP,让您的身份只能访问来自预期网络的可信资源。
- 基于资源的策略 – 附加到资源的策略。例如,您可以将基于资源的策略附加到 Amazon Simple Storage Service(Amazon S3)存储桶、Amazon Simple Queue Service(Amazon SQS)队列和 Amazon Key Management Service 加密密钥。有关支持基于资源的策略的服务列表,请参阅与 IAM 搭配使用的 Amazon Web Services 服务。在数据边界环境中使用基于资源的策略,以便仅限可信身份从预期网络访问您的资源。
- VPC 端点策略 – 附加到 VPC 端点的策略,用于控制使用 VPC 端点可以访问哪些主体、操作和资源。在数据边界环境中,使用 VPC 端点策略指定仅限可信身份使用您的网络仅访问可信资源。有关支持 VPC 端点和 VPC 端点策略的服务列表,请参阅与 Amazon PrivateLink 集成的 Amazon Web Services 服务。
接下来扩展上表,将用于实施每个控制目标的控制措施的相应策略包括在内。
数据边界 | 控制目标 | 实施方式 |
身份 | 只有可信身份可访问我的资源。 | 基于资源的策略 |
我的网络仅允许可信身份。 | VPC 端点策略 | |
资源 | 我的身份仅可访问可信资源。 | SCP |
仅可从我的网络访问可信资源。 | VPC 端点策略 | |
网络 | 我的身份只能从预期网络访问资源。 | SCP |
仅可从预期网络访问我的资源。 | 基于资源的策略 |
如上表所示,每个控制目标的正确策略取决于您要保护的资源。基于资源的策略适用于诸如 Amazon S3 存储桶之类的资源,可用于根据调用主体及其调用的网络筛选访问权限。VPC 端点策略用于检查进行 API 调用的主体以及他们尝试访问的资源。此外,SCP 用于限制您的身份访问超出控制范围的资源或网络外部的资源。请注意,SCP 仅适用于您在 Amazon 组织内的主体,而资源策略可用于限制所有主体的访问权限。
最后一个组件是强制执行控制目标的特定 IAM 控制措施或条件键。要实现有效的数据边界控制,请使用以下主要 IAM 条件键,包括新的资源所有者条件键:
- aws:PrincipalOrgID– 使用此条件键限制对可信身份、属于您组织的主体(角色或用户)的访问权限。在数据边界环境中,您将在基于资源的策略和 VPC 端点策略中使用此条件键。
- aws:ResourceOrgID– 使用此条件键限制对属于您 Amazon 组织的资源的访问权限。为了建立数据边界,您将在 SCP 和 VPC 端点策略中使用此条件键。
- aws:SourceIp、aws:SourceVpc、aws:SourceVpce– 使用这些条件键限制对预期网络位置的访问权限,例如您的公司网络或 VPC。在数据边界环境中,您将在基于身份和资源的策略中使用这些条件键。
我们现在可以完成这篇文章中持续制定的表。
数据边界 | 控制目标 | 实施方式 | 主要 IAM 功能 |
身份 | 只有可信身份可访问我的资源。 | 基于资源的策略 | aws:PrincipalOrgID aws:PrincipalIsAWSService |
我的网络仅允许可信身份。 | VPC 端点策略 | aws:PrincipalOrgID aws:PrincipalIsAWSService |
|
资源 | 我的身份仅可访问可信资源。 | SCP | aws:ResourceOrgID |
仅可从我的网络访问可信资源。 | VPC 端点策略 | aws:ResourceOrgID | |
网络 | 我的身份只能从预期网络访问资源。 | SCP | aws:SourceIp aws:SourceVpc aws:SourceVpce aws:ViaAWSService |
仅可从预期网络访问我的资源。 | 基于资源的策略 | aws:SourceIp aws:SourceVpc aws:SourceVpce aws:ViaAWSService aws:PrincipalIsAWSService |
对于身份数据边界,主要条件键是 aws:PrincipalOrgID,您可以在基于资源的策略和 VPC 端点策略中使用此条件键,从而只允许您的身份访问。使用 aws:PrincipalIsAWSService 允许 Amazon Web Services 服务使用自己的身份访问您的资源或网络,例如,Amazon CloudTrail 可以使用此访问权限将数据写入您的存储桶。
对于资源数据边界,主要条件键是 aws:ResourceOrgID,您可以在 SCP 策略或 VPC 端点策略中使用此条件键,以允许您的身份和网络仅访问属于您 Amazon 组织的资源。
最后,在网络边界环境中,在 SCP 和基于资源的策略中使用 aws:SourceIp、aws:SourceVpc 和 aws:SourceVpce 条件键,确保仅限从可信网络访问您的身份和资源。使用 aws:PrincipalIsAWSService 和 aws:ViaAWSService 条件键允许 Amazon Web Services 服务从您的网络位置之外访问您的资源。例如,CloudTrail 可以使用此访问权限将数据写入您的一个 S3 存储桶,或者 Amazon Athena 可以查询您的 S3 存储桶中的数据。有关在数据边界策略中使用这些条件键的更多信息,请参阅博客文章 IAM 可让您更轻松地管理访问资源的 Amazon Web Services 服务的权限。
总结
在这篇博客文章中,您学习了在 Amazon Web Services 上实现身份、资源和网络数据边界所需的基本要素,包括用于实现每个控制目标的主要 IAM 功能。 请继续关注本系列的后续文章,这些文章将为建立身份、资源和网络数据边界提供规范性指导。
Original URL: https://thinkwithwp.com/blogs/security/establishing-a-data-perimeter-on-aws/