

# 使用数据边界建立权限防护机制
<a name="access_policies_data-perimeters"></a>

数据边界防护机制旨在充当始终开启边界，以帮助保护各种 Amazon 账户和资源中的数据。数据边界遵循 IAM 安全最佳实践在[多个账户之间建立权限防护机制](best-practices.md#bp-permissions-guardrails)。这些组织范围的权限防护机制并不能取代现有的精细访问控制。相反，它们充当**粗粒度的访问控制**，通过确保用户、角色和资源遵守一组定义的安全标准来帮助改善安全策略。

数据边界是 Amazon 环境中的一组权限防护机制，可帮助确保只有可信身份才能访问来自预期网络的可信资源。
+ 可信身份：Amazon 账户中的主体（IAM 角色或用户）以及代表您行事的 Amazon 服务。
+ 可信资源：Amazon 账户或代表您行事的 Amazon 服务所拥有的资源。
+ 预期网络：本地数据中心和虚拟私有云（VPC）或者代表您行事的 Amazon 服务网络。

**注意**  
在某些情况下，您可能需要扩展数据边界，以包括可信业务合作伙伴的访问。在创建特定于您的公司和 Amazon Web Services 服务 的使用的可信身份、可信资源和预期网络的定义时，应考虑所有预期的数据访问模式。

应将数据边界控制视为信息安全和风险管理计划中的任何其他安全控制。这意味着您应该执行威胁分析来识别云环境中的潜在风险，然后根据自己的风险接受标准，选择并实施适当的数据边界控制。为了更好地为基于风险的迭代数据边界实现方法提供信息，您需要了解数据边界控制可以解决哪些安全风险和威胁向量，以及安全优先级。

## 数据边界控制
<a name="access_policies_data-perimeters-controls"></a>

数据边界粗粒度控制通过实现不同的 [策略类型](access_policies.md#access_policy-types) 和[条件键](reference_policies_condition-keys.md)组合，帮助您在三个数据边界上实现六个不同的安全目标。

[\[See the AWS documentation website for more details\]](http://docs.amazonaws.cn/IAM/latest/UserGuide/access_policies_data-perimeters.html)

可以将数据边界视为在数据周围创建牢固的边界，以防止意外访问模式。尽管数据边界可防止广泛的意外访问，但您仍然需要做出精细的访问控制决策。建立数据边界并不能减少使用诸如 [IAM Access Analyzer](what-is-access-analyzer.md) 之类的工具持续微调权限的必要性，这是您实现[最低权限](best-practices.md#grant-least-privilege)的旅程的一部分。

要对 RCP 当前不支持的资源执行数据边界控制，您可以使用直接附加到资源的基于资源的策略。有关支持 RCP 和基于资源的策略的服务列表，请参阅 [Resource control policies (RCPs)](https://docs.amazonaws.cn/organizations/latest/userguide/orgs_manage_policies_rcps.html) 和 [使用 IAM 的 Amazon 服务](reference_aws-services-that-work-with-iam.md)。

要强制实施网络边界控制，我们建议使用 `aws:VpceOrgID`、`aws:VpceOrgPaths` 和 `aws:VpceAccount`，但唯一前提是当前支持要限制其访问的所有服务。将条件键用于不支持的服务可能会导致意想不到的授权结果。有关支持这些键的服务的列表，请参阅[Amazon 全局条件上下文密钥](reference_policies_condition-keys.md)。如果需要对更广泛的服务强制实施控制，可考虑改用 `aws:SourceVpc` 和 `aws:SourceVpce`。

## 身份边界
<a name="access_policies_data-perimeters-identity"></a>

身份边界是一组粗粒度的预防性访问控制，有助于确保只有可信身份才能访问您的资源，并且只有可信身份才能访问您的网络。可信身份通常包括 Amazon 账户中的主体（角色或用户）以及代表您行事的 Amazon 服务。除非授予显式例外，否则所有其他身份都被视为不可信，并且会被身份边界阻止。

根据您对可信身份的定义，以下全局条件键可帮助强制实施身份边界控制。在资源控制策略中使用这些键来限制对资源的访问，或者在 [VPC 端点策略](https://docs.amazonaws.cn//vpc/latest/privatelink/vpc-endpoints-access.html)中使用这些键来限制对您的网络的访问。

### 您拥有的身份
<a name="data-perimeters-identity-owned-by-you"></a>

可使用以下条件键，定义您在 Amazon Web Services 账户 中创建和管理的 IAM 主体。
+ [aws:PrincipalOrgID](reference_policies_condition-keys.md#condition-keys-principalorgid) – 可以使用此条件键来确保提出请求的 IAM 主体属于 Amazon Organizations 中的指定组织。
+ [aws:PrincipalOrgPaths](reference_policies_condition-keys.md#condition-keys-principalorgpaths) – 可以使用此条件键来确保提出请求的 IAM 用户、IAM 角色、Amazon STS 联合用户主体或 SAML 联合主体、OIDC 联合主体或 Amazon Web Services 账户根用户 属于 Amazon Organizations 中的指定组织单位（OU）。
+ [aws:PrincipalAccount](reference_policies_condition-keys.md#condition-keys-principalaccount) – 可以使用此条件键来确保只有您在策略中指定的主体账户才能访问资源。

### 代表您行事的 Amazon 服务的身份
<a name="data-perimeters-identity-owned-by-service"></a>

可使用以下条件键，允许 Amazon 服务在代表您行事时使用其自有身份访问您的资源。
+ [aws:PrincipalIsAWSService](reference_policies_condition-keys.md#condition-keys-principalisawsservice) 和 [aws:SourceOrgID](reference_policies_condition-keys.md#condition-keys-sourceorgid)（或者 [aws:SourceOrgPaths](reference_policies_condition-keys.md#condition-keys-sourceorgpaths) 和 [aws:SourceAccount](reference_policies_condition-keys.md#condition-keys-sourceaccount)）– 可以使用这些条件键来确保当 [Amazon Web Services 服务 主体](reference_policies_elements_principal.md#principal-services)访问您的资源时，他们仅代表指定组织、组织单位中的资源或 Amazon Organizations 中的账户进行访问。

有关更多信息，请参阅[在 Amazon 上建立数据边界：仅允许可信身份访问公司数据](https://www.amazonaws.cn/blogs/security/establishing-a-data-perimeter-on-aws-allow-only-trusted-identities-to-access-company-data/)。

## 资源边界
<a name="access_policies_data-perimeters-resource"></a>

资源边界是一组粗粒度的预防性访问控制，有助于确保您的身份只能访问可信资源，并且只能从您的网络访问可信资源。可信资源通常包括您的 Amazon 账户或代表您行事的 Amazon 服务所拥有的资源。

根据您对可信资源的定义，以下全局条件键有助于强制实施资源边界控制。在[服务控制策略 (SCP)](https://docs.amazonaws.cn/organizations/latest/userguide/orgs_manage_policies_scps.html)中使用这些键来限制您的身份可以访问哪些资源，或者在 [VPC 端点策略](https://docs.amazonaws.cn/vpc/latest/privatelink/vpc-endpoints-access.html)中使用这些键来限制可以从您的网络访问哪些资源。

### 您拥有的资源
<a name="data-perimeters-resource-owned-by-you"></a>

可使用以下条件键，定义您在 Amazon Web Services 账户 中创建和管理的 Amazon 资源。
+ [aws:ResourceOrgID](reference_policies_condition-keys.md#condition-keys-resourceorgid) – 可以使用此条件键来确保正在访问的资源属于 Amazon Organizations 中的指定组织。
+ [aws:ResourceOrgPaths](reference_policies_condition-keys.md#condition-keys-resourceorgpaths) – 可以使用此条件键来确保正在访问的资源属于 Amazon Organizations 中指定的组织单位（OU）。
+ [aws:ResourceAccount](reference_policies_condition-keys.md#condition-keys-resourceaccount) – 可以使用此条件键来确保正在访问的资源属于指定 Amazon Web Services 账户。

### 代表您行事的 Amazon 服务资源
<a name="data-perimeters-resource-owned-by-service"></a>

在某些情况下，您可能需要允许访问 Amazon 拥有的资源，这些资源不属于您的组织，由您的主体或代表您行事的 Amazon 服务访问。有关这些场景的更多信息，请参阅[在 Amazon 上建立数据边界：仅允许来自我的组织的可信资源](https://www.amazonaws.cn/blogs/security/establishing-a-data-perimeter-on-aws-allow-only-trusted-resources-from-my-organization/)。

## 网络边界
<a name="access_policies_data-perimeters-network"></a>

网络边界是一组粗粒度的预防性访问控制，可帮助确保您的身份只能访问预期网络中的资源，并且只能从预期网络访问您的资源。预期网络通常包括您的本地数据中心和虚拟私有云（VPC）以及代表您行事的 Amazon 服务网络。

根据您对预期网络的定义，以下全局条件键有助于强制实施网络边界控制。在[服务控制策略（SCP）](https://docs.amazonaws.cn/organizations/latest/userguide/orgs_manage_policies_scps.html)中使用这些键来限制您的身份可以与之通信的网络，或者在[资源控制策略（RCP）](https://docs.amazonaws.cn/organizations/latest/userguide/orgs_manage_policies_rcps.html)中使用这些键来限制对预期网络的资源访问。

### 您拥有的网络
<a name="data-perimeters-network-owned-by-you"></a>

可使用以下条件键，定义您的员工和应用程序访问资源时应使用的网络，例如企业 IP CIDR 范围和 VPC。
+ [aws:SourceIp](reference_policies_condition-keys.md#condition-keys-sourceip) – 可以使用此条件键来确保请求者的 IP 地址在指定的 IP 范围内。
+ [aws:SourceVpc](reference_policies_condition-keys.md#condition-keys-sourcevpc) – 可以使用此条件键来确保请求通过其传输的 VPC 端点属于指定的 VPC。
+ [aws:SourceVpce](reference_policies_condition-keys.md#condition-keys-sourcevpce) – 可以使用此条件键来确保请求通过指定的 VPC 端点传输。
+ [aws:VpceAccount](reference_policies_condition-keys.md#condition-keys-vpceaccount) – 可以使用此条件键来确保请求经由指定 Amazon 账户拥有的 VPC 端点。
+ [aws:VpceOrgPaths](reference_policies_condition-keys.md#condition-keys-vpceorgpaths) – 可以使用此条件键来确保提出请求的 IAM 主体属于 Amazon Organizations 中的指定组织单元 (OU)。
+ [aws:VpceOrgID](reference_policies_condition-keys.md#condition-keys-vpceorgid) – 可使用此条件键来确保请求经由 Amazon Organizations 中的指定组织中的账户拥有的 VPC 端点。

`aws:VpceAccount`、`aws:VpceOrgPaths` 和 `aws:VpceOrgID` 对实施网络边界控制特别有用，这种控制可随 VPC 端点的使用情况自动扩展，且在创建新端点时无需更新策略。有关支持这些键的 Amazon Web Services 服务 列表，请参阅[Amazon 全局条件上下文密钥](reference_policies_condition-keys.md)。

### 代表您行事的 Amazon 服务网络
<a name="data-perimeters-network-owned-by-service"></a>

可使用以下条件键，允许 Amazon 服务在代表您行事时从其网络访问您的资源。
+ [aws:ViaAWSService](reference_policies_condition-keys.md#condition-keys-viaawsservice) – 可以使用此条件键来确保 Amazon Web Services 服务 可以使用 [转发访问会话](access_forward_access_sessions.md)（FAS）代表您的主体提出请求。
+ [aws:PrincipalIsAWSService](reference_policies_condition-keys.md#condition-keys-principalisawsservice) – 可以使用此条件键来确保 Amazon Web Services 服务 可以使用 [Amazon 服务主体](reference_policies_elements_principal.md#principal-services) 访问您的资源。

 在其他情况下，您需要允许从网络外部访问 Amazon Web Services 服务 以访问您的资源。有关更多信息，请参阅[在 Amazon 上建立数据边界：仅允许从预期网络访问公司数据](https://www.amazonaws.cn/blogs/security/establishing-a-data-perimeter-on-aws-allow-access-to-company-data-only-from-expected-networks/)。

## 用于了解有关数据边界的更多信息的资源
<a name="access_policies_data-perimeters-resources"></a>

以下资源可帮助了解有关 Amazon 的数据边界的更多信息。
+ [Amazon 上的数据边界](https://www.amazonaws.cn/identity/data-perimeters-on-aws/) – 了解数据边界及其优势和用例。
+  [博客文章系列：在 Amazon 上建立数据边界](https://www.amazonaws.cn/identity/data-perimeters-blog-post-series/) – 这些博客文章涵盖了有关大规模建立数据边界的规范性指导，包括关键的安全和实现注意事项。
+  [数据边界策略示例](https://github.com/aws-samples/data-perimeter-policy-examples/tree/ce06665ca8b2f07debee7bed5153c3be0f31c73c) – 此 GitHub 存储库包含示例策略，这些策略涵盖了一些常见模式，可帮助您在 Amazon 上实现数据边界。
+ [数据边界帮助程序](https://github.com/aws-samples/data-perimeter-helper/tree/main?tab=readme-ov-file) – 此工具通过分析 [Amazon CloudTrail](https://docs.amazonaws.cn/awscloudtrail/latest/userguide/cloudtrail-user-guide.html) 日志中的访问活动，帮助您设计和预测数据边界控制的影响。