

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

# 在安全湖中管理区域
<a name="manage-regions"></a>

Amazon Security Lake AWS 区域 可以收集您启用该服务的安全日志和事件。对于每个区域，您的数据都存储在不同的 Amazon S3 存储桶中。您可以为不同的区域指定不同的数据湖配置（例如，不同的来源和留存设置）。您还可以定义一个或多个汇总区域来整合多个区域的数据。

## 检查区域状态
<a name="check-region-status"></a>

Security Lake 可以跨多个 AWS 区域收集数据。要跟踪数据湖的状态，了解每个区域的当前配置可能会有所帮助。选择您的首选访问方式，然后按照以下步骤获取区域的当前状态。

------
#### [ Console ]

**查看地区状态**

1. 在上打开 Security Lake 控制台[https://console.aws.amazon.com/securitylake/](https://console.aws.amazon.com/securitylake/)。

1. 在导航窗格中，选择**区域**。此时会显示**区域**页面，其中提供了当前已启用 Security Lake 的区域的概览。

1. 选择一个区域，然后选择**编辑**，查看该区域的详细信息。

------
#### [ API ]

要获取当前区域中日志收集的状态，请使用 Security Lake API 的[https://docs.aws.amazon.com/security-lake/latest/APIReference/API_GetDataLakeSources.html](https://docs.aws.amazon.com/security-lake/latest/APIReference/API_GetDataLakeSources.html)操作。如果您使用的是 AWS CLI，请运行该[https://awscli.amazonaws.com/v2/documentation/api/latest/reference/securitylake/get-data-lake-sources.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/securitylake/get-data-lake-sources.html)命令。对于`accounts`参数，将一个或多个指定 AWS 账户 IDs 为列表。如果您的请求成功，Security Lake 将返回当前区域中这些账户的快照，包括 Security Lake 正在从哪些 AWS 来源收集数据以及每个来源的状态。如果您不包含`accounts`参数，则响应将包含当前区域中配置了 Security Lake 的所有账户的日志收集状态。

例如，以下 AWS CLI 命令检索当前区域中指定账户的日志收集状态。此示例是针对 Linux、macOS 或 Unix 进行格式化的，它使用反斜杠（\$1）行继续符来提高可读性。

```
$ aws securitylake get-data-lake-sources \
--accounts "123456789012" "111122223333"
```

以下 AWS CLI 命令列出指定区域中所有账户和已启用源的日志收集状态。此示例是针对 Linux、macOS 或 Unix 进行格式化的，它使用反斜杠（\$1）行继续符来提高可读性。

```
$ aws securitylake get-data-lake-sources \
--regions "us-east-1" \
--query 'dataLakeSources[].[account,sourceName]'
```

要确定您是否为某个区域启用了安全湖，请使用[https://docs.aws.amazon.com/security-lake/latest/APIReference/API_ListDataLakes.html](https://docs.aws.amazon.com/security-lake/latest/APIReference/API_ListDataLakes.html)操作。如果您使用的是 AWS CLI，请运行该[https://awscli.amazonaws.com/v2/documentation/api/latest/reference/securitylake/list-data-lakes.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/securitylake/list-data-lakes.html)命令。对于 `regions` 参数，请指定区域的区域代码。例如，`us-east-1` 表示美国东部（弗吉尼亚州北部）区域。有关区域代码的列表，请参阅《AWS 一般参考》**中的 [Amazon Security Lake 端点](https://docs.aws.amazon.com/general/latest/gr/securitylake.html)。`ListDataLakes` 操作会返回您在请求中指定的每个区域的数据湖配置设置。如果您未指定区域，Security Lake 会返回每个可用 Security Lake 的区域中您的数据湖的状态和配置设置。

例如，以下 AWS CLI 命令显示该`eu-central-1`区域中数据湖的状态和配置设置。此示例是针对 Linux、macOS 或 Unix 进行格式化的，它使用反斜杠（\$1）行继续符来提高可读性。

```
$ aws securitylake list-data-lakes \
--regions "us-east-1" "eu-central-1"
```

------

## 更改区域设置
<a name="configure-region-settings"></a>

选择首选方式，然后按照以下说明更新一个或多个 AWS 区域中的数据湖的设置。

------
#### [ Console ]

1. 在上打开 Security Lake 控制台[https://console.aws.amazon.com/securitylake/](https://console.aws.amazon.com/securitylake/)。

1. 在导航窗格中，选择**区域**。

1. 选择一个区域，然后选择**编辑**。

1. 选择**覆盖*<区域>*中所有账户的来源**复选框，确认使用此处的选择覆盖该区域以前的选择。

1. 在**选择存储类**中，选择**添加转换**，为您的数据添加新的存储类。

1. 对于**标签**，您可以选择为区域指定或编辑标签。*标签*是您可以为某些类型的 AWS 资源定义和分配的标签，包括您在特定 AWS 账户 区域的数据湖配置。要了解更多信息，请参阅[为安全湖资源添加标签](tagging-resources.md)。

1. 要将某个区域变为汇总区域，请在导航窗格中选择**汇总区域**（在**设置**下）。然后选择 **Modify (修改)**。在**选择汇总区域**部分，选择**添加汇总区域**。选择数据提供区域，并向 Security Lake 提供跨多个区域复制数据的权限。完成后，选择**保存**以保存更改。

------
#### [ API ]

要以编程方式更新数据湖的区域设置，请使用 Security Lake API 的[https://docs.aws.amazon.com/security-lake/latest/APIReference/API_UpdateDataLake.html](https://docs.aws.amazon.com/security-lake/latest/APIReference/API_UpdateDataLake.html)操作。如果您使用的是 AWS CLI，请运行该[https://docs.aws.amazon.com/cli/latest/reference/securitylake/update-data-lake.html](https://docs.aws.amazon.com/cli/latest/reference/securitylake/update-data-lake.html)命令。对于 `region` 参数，请指定您要更改设置的区域的区域代码。例如，`us-east-1` 表示美国东部（弗吉尼亚州北部）区域。有关区域代码的列表，请参阅《AWS 一般参考》**中的 [Amazon Security Lake 端点](https://docs.aws.amazon.com/general/latest/gr/securitylake.html)。

使用其他参数为要更改的每个设置指定新值，例如，加密密钥 (`encryptionConfiguration`) 和留存设置 (`lifecycleConfiguration`)。

例如，以下 AWS CLI 命令更新该`us-east-1`区域的数据过期和存储类别转换设置。此示例是针对 Linux、macOS 或 Unix 进行格式化的，它使用反斜杠（\$1）行继续符来提高可读性。

```
$ update-data-lake \
--configurations '[{"region":"us-east-1","lifecycleConfiguration": {"expiration":{"days":500},"transitions":[{"days":45,"storageClass":"ONEZONE_IA"}]}}]'
```

------

# 在 Security Lake 中配置汇总区域
<a name="add-rollup-region"></a>

汇总区域整合了来自一个或多个数据提供区域的数据。指定汇总区域可以帮助您遵守区域合规性要求。

由于 Amazon S3 的限制，不支持从客户托管密钥 (CMK) 加密的区域数据湖复制到 S3 托管加密（默认加密）区域数据湖。

**重要**  
如果您创建了自定义源，为了确保将自定义源数据正确复制到目标，Security Lake 建议遵循[采集自定义源的最佳实践中描述的最佳实践](https://docs.aws.amazon.com//security-lake/latest/userguide/custom-sources.html#custom-sources-best-practices)。无法对不遵循页面上描述的 S3 分区数据路径格式的数据执行复制。

在添加汇总区域之前，您首先需要在 AWS Identity and Access Management (IAM) 中创建两个不同的角色：
+ [用于数据复制的 IAM 角色](#iam-role-replication)
+ [用于注册 AWS Glue 分区的 IAM 角色](#iam-role-partitions)

**注意**  
当您使用 Security Lake 控制台时，Security Lake 会代您创建这些 IAM 角色或使用现有角色。但是，在使用 Security Lake API 时必须创建这些角色或 AWS CLI。

## 用于数据复制的 IAM 角色
<a name="iam-role-replication"></a>

此 IAM 角色授予 Amazon S3 跨多个区域复制源日志和事件的权限。

要授予这些权限，请创建一个带有前缀 `SecurityLake` 的 IAM 角色，并将以下示例策略附加到该角色。在 Security Lake 中创建汇总区域时，您需要该角色的 Amazon 资源名称 (ARN)。在此策略中，`sourceRegions` 是数据提供区域，`destinationRegions` 是汇总区域。

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "AllowReadS3ReplicationSetting",
      "Action": [
        "s3:ListBucket",
        "s3:GetReplicationConfiguration",
        "s3:GetObjectVersionForReplication",
        "s3:GetObjectVersion",
        "s3:GetObjectVersionAcl",
        "s3:GetObjectVersionTagging",
        "s3:GetObjectRetention",
        "s3:GetObjectLegalHold"
      ],
      "Effect": "Allow",
      "Resource": [
        "arn:aws:s3:::aws-security-data-lake-[[sourceRegions]]*",
        "arn:aws:s3:::aws-security-data-lake-[[sourceRegions]]*/*"
      ],
      "Condition": {
        "StringEquals": {
          "s3:ResourceAccount": [
            "{{bucketOwnerAccountId}}"
          ]
        }
      }
    },
    {
      "Sid": "AllowS3Replication",
      "Action": [
        "s3:ReplicateObject",
        "s3:ReplicateDelete",
        "s3:ReplicateTags",
        "s3:GetObjectVersionTagging"
      ],
      "Effect": "Allow",
      "Resource": [
        "arn:aws:s3:::aws-security-data-lake-[[destinationRegions]]*/*"
      ],
      "Condition": {
        "StringEquals": {
          "s3:ResourceAccount": [
            "{{bucketOwnerAccountId}}"
          ]
        }
      }
    }
  ]
}
```

------

将以下信任策略附加到您的角色，以便允许 Amazon S3 代入该角色：

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowS3ToAssume",
            "Effect": "Allow",
            "Principal": {
                "Service": "s3.amazonaws.com"
            },
            "Action": "sts:AssumeRole"
        }
    ]
}
```

------

如果您使用 AWS Key Management Service (AWS KMS) 中的客户托管密钥来加密您的 Security Lake 数据湖，则除了数据复制策略中的权限外，还必须授予以下权限。

```
{
    "Action": [
        "kms:Decrypt"
    ],
    "Effect": "Allow",
    "Condition": {
        "StringLike": {
            "kms:ViaService": [
                "s3.{sourceRegion1}.amazonaws.com",
                "s3.{sourceRegion2}.amazonaws.com"
                ],
            "kms:EncryptionContext:aws:s3:arn": [
                "arn:aws:s3:::aws-security-data-lake-{sourceRegion1}*",
                "arn:aws:s3:::aws-security-data-lake-{sourceRegion2}*"
            ]
        }
    },
    "Resource": [
        "{sourceRegion1KmsKeyArn}",
        "{sourceRegion2KmsKeyArn}"
    ]
},
{
    "Action": [
        "kms:Encrypt"
    ],
    "Effect": "Allow",
    "Condition": {
        "StringLike": {
            "kms:ViaService": [
            "s3.{destinationRegion1}.amazonaws.com",
            ],
            "kms:EncryptionContext:aws:s3:arn": [
                "arn:aws:s3:::aws-security-data-lake-{destinationRegion1}*",
            ]
        }
    },
    "Resource": [
            "{destinationRegionKmsKeyArn}"
    ]
}
```

有关复制角色的更多信息，请参阅《*Amazon 简单存储服务用户指南》*中的[设置权限](https://docs.aws.amazon.com/AmazonS3/latest/userguide/setting-repl-config-perm-overview.html)。

## 用于注册 AWS Glue 分区的 IAM 角色
<a name="iam-role-partitions"></a>

此 IAM 角色授予对 Security Lake 使用的分区更新程序 AWS Lambda 功能的权限，该功能用于为从其他区域复制的 S3 对象注册 AWS Glue 分区。如果不创建此角色，订阅用户就无法从这些对象中查询事件。

要授予这些权限，请创建一个名为 `AmazonSecurityLakeMetaStoreManager` 的角色（您可能已在启用 Security Lake 时创建了此角色）。有关此角色的更多信息，包括示例策略，请参阅[步骤 1：创建 IAM 角色](get-started-programmatic.md#prerequisites)。

在 Lake Formation 控制台中，您还必须按照以下步骤向 `AmazonSecurityLakeMetaStoreManager` 授予数据湖管理员的权限：

1. 打开 Lake Formation 控制台，网址为[https://console.aws.amazon.com/lakeformation/](https://console.aws.amazon.com/lakeformation/)。

1. 以管理用户的身份登录。

1. 如果显示**欢迎使用 Lake Formation** 窗口，请选择您在步骤 1 中创建或选择的用户，然后选择“开始”。

1. 如果没有看到**欢迎使用 Lake Formation** 窗口，请执行以下步骤来配置 Lake Formation 管理员。

   1. 在导航窗格的**权限**下，选择**管理角色和任务**。在**数据湖管理员**部分，选择**选择管理员**。

   1. 在**管理数据湖管理员**对话框中，对于 IAM 用户和角色，选择您创建**AmazonSecurityLakeMetaStoreManager**的 IAM 角色，然后选择**保存**。

有关更改数据湖管理员权限的更多信息，请参阅 *AWS Lake Formation 开发人员指南*中的[创建数据湖管理员](https://docs.aws.amazon.com/lake-formation/latest/dg/getting-started-setup.html#create-data-lake-admin)。

## 添加汇总区域
<a name="procedures-add-rollup-region"></a>

选择您的首选访问方式，然后按照以下步骤添加汇总区域。

**注意**  
一个区域可以向多个汇总区域提供数据。但是，一个汇总区域无法向其他汇总区域提供数据。

------
#### [ Console ]

1. 在上打开 Security Lake 控制台[https://console.aws.amazon.com/securitylake/](https://console.aws.amazon.com/securitylake/)。

1. 在导航窗格中的**设置**下，选择**汇总区域**。

1. 选择**修改**，然后选择**添加汇总区域**。

1. 指定汇总区域以及数据提供区域。如果要添加多个汇总区域，请重复此步骤。

1. 如果这是您首次添加汇总区域，对于**服务访问权限**，请创建一个新的 IAM 角色或使用现有 IAM 角色向 Security Lake 授予跨多个区域复制数据的权限。

1. 完成后，选择**保存**。

您也可以在启用 Security Lake 时添加汇总区域。有关更多信息，请参阅 [Amazon Security Lake 入门](getting-started.md)。

------
#### [ API ]

要以编程方式添加汇总区域，请使用 Security Lake API 的[https://docs.aws.amazon.com/security-lake/latest/APIReference/API_UpdateDataLake.html](https://docs.aws.amazon.com/security-lake/latest/APIReference/API_UpdateDataLake.html)操作。如果您使用的是 AWS CLI，请运行该[https://awscli.amazonaws.com/v2/documentation/api/latest/reference/securitylake/update-data-lake.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/securitylake/update-data-lake.html)命令。在您的请求中，使用 `region` 字段指定要向汇总区域提供数据的区域。在`replicationConfiguration`参数`regions`数组中，为每个汇总区域指定区域代码。有关区域代码的列表，请参阅 *AWS 一般参考* 中的 [Amazon Security Lake 端点](https://docs.aws.amazon.com/general/latest/gr/securitylake.html)。

例如，以下命令设置`ap-northeast-2`为汇总区域。该`us-east-1`地区将向该`ap-northeast-2`地区提供数据。此示例还为添加到数据湖中的对象设定了 365 天的过期期。此示例是针对 Linux、macOS 或 Unix 进行格式化的，它使用反斜杠（\$1）行继续符来提高可读性。

```
$ aws securitylake update-data-lake \
--configurations '[{"encryptionConfiguration": {"kmsKeyId":"S3_MANAGED_KEY"},"region":"us-east-1","replicationConfiguration": {"regions": ["ap-northeast-2"],"roleArn":"arn:aws:iam::123456789012:role/service-role/AmazonSecurityLakeS3ReplicationRole"},"lifecycleConfiguration": {"expiration":{"days":365}}}]'
```

您也可以在启用 Security Lake 时添加汇总区域。为此，请使用[https://docs.aws.amazon.com/security-lake/latest/APIReference/API_CreateDataLake.html](https://docs.aws.amazon.com/security-lake/latest/APIReference/API_CreateDataLake.html)操作（或者，如果使用 AWS CLI，则使用[create-data-lake](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/securitylake/update-data-lake.html)命令）。有关在入职期间配置汇总区域的更多信息，请参阅。[Amazon Security Lake 入门](getting-started.md)

------

## 更新或移除汇总区域
<a name="procedures-update-remove-rollup-region"></a>

选择您的首选访问方式，然后按照以下步骤更新或移除 Security Lake 中的汇总区域。

------
#### [ Console ]

1. 在上打开 Security Lake 控制台[https://console.aws.amazon.com/securitylake/](https://console.aws.amazon.com/securitylake/)。

1. 在导航窗格中的**设置**下，选择**汇总区域**。

1. 选择 **Modify**(修改)。

1. 要更改汇总区域的数据提供区域，请在汇总区域行中指定更新后的数据提供区域。

1. 要移除汇总区域，请在汇总区域行中选择**移除**。

1. 完成后，选择**保存**。

------
#### [ API ]

要以编程方式配置汇总区域，请使用 Security Lake API 的[https://docs.aws.amazon.com/security-lake/latest/APIReference/API_UpdateDataLake.html](https://docs.aws.amazon.com/security-lake/latest/APIReference/API_UpdateDataLake.html)操作。如果您使用的是 AWS CLI，请运行该[https://awscli.amazonaws.com/v2/documentation/api/latest/reference/securitylake/update-data-lake.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/securitylake/update-data-lake.html)命令。在您的请求中，使用支持的参数指定汇总区域设置：
+ 要添加数据提供区域，请使用 `region` 字段为要添加的区域指定区域代码。在 `replicationConfiguration` 对象的 `regions` 阵列中，为每个要向其提供数据的汇总区域指定区域代码。有关区域代码的列表，请参阅 *AWS 一般参考* 中的 [Amazon Security Lake 端点](https://docs.aws.amazon.com/general/latest/gr/securitylake.html)。
+ 要移除数据提供区域，请使用 `region` 字段为要移除的区域指定区域代码。对于 `replicationConfiguration` 参数，请勿指定任何值。

例如，以下命令将`us-east-1`和配置`us-east-2`为贡献区域。两个区域都将向`ap-northeast-3`汇总区域提供数据。此示例是针对 Linux、macOS 或 Unix 进行格式化的，它使用反斜杠（\$1）行继续符来提高可读性。

```
$ aws securitylake update-data-lake \
--configurations '[{"encryptionConfiguration": {"kmsKeyId":"S3_MANAGED_KEY"},"region":"us-east-1","replicationConfiguration": {"regions": ["ap-northeast-3"],"roleArn":"arn:aws:iam::123456789012:role/service-role/AmazonSecurityLakeS3ReplicationRole"},"lifecycleConfiguration": {"expiration":{"days":365}}},
{"encryptionConfiguration": {"kmsKeyId":"S3_MANAGED_KEY"},"region":"us-east-2","replicationConfiguration": {"regions": ["ap-northeast-3"],"roleArn":"arn:aws:iam::123456789012:role/service-role/AmazonSecurityLakeS3ReplicationRole"}, "lifecycleConfiguration": {"expiration":{"days":500},"transitions":[{"days":60,"storageClass":"ONEZONE_IA"}]}}]'
```

------