

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

# 在 OpenSearch 服务中创建 Amazon Security Lake 数据源集成
<a name="direct-query-security-lake-creating"></a>

您可以使用 Amazon OpenSearch Serverless 直接查询亚马逊安全湖中的安全数据。为此，您需要创建一个数据源，使您能够在 Security Lake 数据上使用 OpenSearch零 ETL 功能。创建数据来源时，您可以直接搜索存储在 Security Lake 中的数据，从中获取见解并分析这些数据。您可以提高查询性能，并使用按需索引对选定的 Security Lake 数据集进行高级 OpenSearch 分析。

**Topics**
+ [先决条件](#direct-query-s3security-lake-prereq)
+ [过程](#direct-query-security-lake-create)
+ [后续步骤](#direct-query-security-lake-next-steps)
+ [其他资源](#direct-query-security-lake-additional-resources)

## 先决条件
<a name="direct-query-s3security-lake-prereq"></a>

开始使用之前，请确保您已阅读以下文档：
+ [限制](direct-query-security-lake-overview.md#direct-query-security-lake-limitations)
+ [建议](direct-query-security-lake-overview.md#direct-query-security-lake-recommendations)
+ [配额](direct-query-security-lake-overview.md#direct-query-security-lake-quotas)

创建数据来源之前，在 Security Lake 中执行以下操作：
+ **启用 Security Lake**。将 Security Lake 配置为收集与您的 OpenSearch 资源 AWS 区域 相同的日志。有关说明，请参阅《Amazon Security Lake 用户指南》中的 [Amazon Security Lake 入门](https://docs.aws.amazon.com/security-lake/latest/userguide/getting-started.html)。
+ **设置 Security Lake 权限**。请确保您已接受资源管理相关的服务关联角色权限，且控制台的**问题**页面未显示任何问题。。有关更多信息，请参阅《Amazon Security Lake 用户指南》中的[Security Lake 服务关联角色](https://docs.aws.amazon.com/security-lake/latest/userguide/using-service-linked-roles.html)。
+ **共享 Security Lake 数据来源**。使用与 Security Lake 相同的账户进行访问时，请确保没有消息要求 OpenSearch 在 Security Lake 控制台中向 Lake Formation 注册您的 Security Lake 存储桶。要进行跨账户 OpenSearch 访问，请在 Security Lake 控制台中设置 Lake Formation 查询订阅者。使用与您的 OpenSearch 资源关联的账户作为订阅者。有关更多信息，请参阅《Amazon Security Lake 用户指南》中的[Security Lake 的订阅用户管理](https://docs.aws.amazon.com/security-lake/latest/userguide/create-query-subscriber-procedures.html)。

此外，您还必须在 AWS 账户中具备以下资源：
+ **（可选）手动创建的 IAM 角色。**您可以使用此角色以管理对数据来源的访问权限。或者，您可以让 S OpenSearch ervice 自动为您创建具有所需权限的角色。如果选择使用手动创建的 IAM 角色，请按照 [手动创建的 IAM 角色所需权限](#direct-query-security-lake-additional-resources-required-permissions) 中的指导进行操作。

## 过程
<a name="direct-query-security-lake-create"></a>

您可以在 AWS 管理控制台中设置数据来源，用于连接 Security Lake 数据库。

### 要使用设置数据源 AWS 管理控制台
<a name="creating-direct-query-security-lake-console-create"></a>

1. 导航到亚马逊 OpenSearch 服务控制台，网址为[https://console.aws.amazon.com/aos/](https://console.aws.amazon.com/aos/)。

1. 在左侧导航窗格中，转到**集中管理**，然后选择**连接的数据来源**。

1. 选择**连接**。

1. 选择 **Security Lake** 作为数据来源类型。

1. 选择**下一步**。

1. 在**数据连接详细信息**下，输入名称和可选描述。

1. 在 **IAM 权限访问设置**下，选择如何管理对数据来源的访问权限。

   1. 如果要自动为此数据来源创建角色，请按照以下步骤操作：

      1. 选择**创建新角色**。

      1. 输入 IAM 角色的名称。

      1. 选择一个或多个 AWS Glue 表来定义可以查询哪些数据。

   1. 如果要使用您自行管理的现有角色，请按照以下步骤操作：

      1. 选择**使用现有角色**。

      1. 从下拉菜单中选择现有角色。
**注意**  
使用自有角色时，您必须通过从 IAM 控制台附加所需策略，确保该角色具备所有必要的权限。有关更多信息，请参阅 [手动创建的 IAM 角色所需权限](#direct-query-security-lake-additional-resources-required-permissions)。

1. （可选）在**标签**下，向数据来源添加标签。

1. 选择**下一步**。

1. 在 “**设置**” 下 OpenSearch，选择设置方式 OpenSearch。

   1. 查看默认资源名称和数据留存设置。

     使用默认设置时，将为您创建一个新的 OpenSearch应用程序和 Essentials 工作区，无需支付额外费用。 OpenSearch 使您能够分析多个数据源。OpenSearch 包含工作区，可为常见使用案例提供量身定制的体验。工作区支持访问控制，使您能够为特定使用案例创建私有空间，并仅与协作伙伴共享。

1. 使用自定义设置：

   1. 选择**自定义**。

   1. 根据需要编辑集合名称和数据留存设置。

   1. 选择要使用的 OpenSearch 应用程序和工作区。

1. 选择**下一步**。

1. 查看您的选择，如需进行任何更改，请选择**编辑**。

1. 选择**连接**以设置数据来源。创建数据来源期间，请留在此页面。准备就绪后，您将进入数据来源详情页面。

## 后续步骤
<a name="direct-query-security-lake-next-steps"></a>

### 访问 OpenSearch 仪表板并创建仪表板
<a name="direct-query-security-lake-next-steps-dashboard"></a>

创建数据源后， OpenSearch 服务会为您提供 OpenSearch仪表板 URL。使用此 URL 通过 SQL 或 PPL 查询数据。Security Lake 集成提供预打包的 SQL 和 PPL 查询模板，助您开始分析日志。

有关更多信息，请参阅 [在 OpenSearch 控制面板中配置和查询 Security Lake 数据源](direct-query-security-lake-configure.md)。

## 其他资源
<a name="direct-query-security-lake-additional-resources"></a>

### 手动创建的 IAM 角色所需权限
<a name="direct-query-security-lake-additional-resources-required-permissions"></a>

创建数据来源时，您可以选择一个 IAM 角色，以管理对数据的访问权限。你有两个选择：

1. 自动创建新的 IAM 角色

1. 使用手动创建的现有 IAM 角色。

如果您使用手动创建的角色，则需为该角色关联正确的权限。这些权限必须允许访问特定的数据源，并允许 S OpenSearch ervice 担任该角色，这样 S OpenSearch ervice 才能安全地访问您的数据并与之交互。此外，向该角色授予您要查询的任何数据库和表的 LakeFormation权限。向该角色`DESCRIBE`授予您要通过直接查询连接进行查询的 SecurityLake数据库的权限。至少向数据来源角色授予数据库中表的 `SELECT and DESCRIBE` 权限。

以下示例策略演示了创建和管理数据来源所需的最低权限。如果您拥有更广泛的权限，例如 `AdminstratorAccess` 策略，则这些权限包含示例策略中的最低权限。

在以下示例政策中，*placeholder text *用您自己的信息替换。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AmazonOpenSearchDirectQueryServerlessAccess",
            "Effect": "Allow",
            "Action": [
                "aoss:APIAccessAll",
                "aoss:DashboardsAccessAll"
            ],
            "Resource": "arn:aws:aoss:us-east-1:111122223333:collection/collectionname/*"
        },
        {
            "Sid": "AmazonOpenSearchDirectQueryGlueAccess",
            "Effect": "Allow",
            "Action": [
                "glue:GetDatabase",
                "glue:GetDatabases",
                "glue:GetPartition",
                "glue:GetPartitions",
                "glue:GetTable",
                "glue:GetTableVersions",
                "glue:GetTables",
                "glue:SearchTables",
                "glue:BatchGetPartition"
            ],
            "Resource": [
                "arn:aws:glue:us-east-1:111122223333:table/databasename/*",
                "arn:aws:glue:us-east-1:111122223333:database/databasename",
                "arn:aws:glue:us-east-1:111122223333:catalog",
                "arn:aws:glue:us-east-1:111122223333:database/default"
            ]
        },
        {
            "Sid": "AmazonOpenSearchDirectQueryLakeFormationAccess",
            "Effect": "Allow",
            "Action": [
                "lakeformation:GetDataAccess"
            ],
            "Resource": [
                "*"
            ]
        }
    ]
}
```

------

该角色还必须具有指定目标 ID 的以下信任策略。

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

****  

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

------

有关创建角色的说明，请参阅[使用自定义信任策略创建角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-custom.html)。

默认情况下，该角色只能访问直接查询数据来源索引。尽管您可以配置该角色以限制或授予对数据来源的访问权限，但建议不要调整该角色的访问权限。**如果您删除数据来源，该角色也将被删除**。如果任何其他用户被映射到该角色，则将移除其访问权限。

### 查询使用客户托管密钥加密的 Securty Lake 数据
<a name="querying-data-in-cmk-lake"></a>

如果与数据连接关联的 Security Lake 存储桶使用服务器端加密并由客户托管 AWS KMS key，则必须将 LakeFormation 服务角色添加到密钥策略中。这使得该服务能够访问并读取您查询的数据。

在以下示例政策中，*placeholder text *用您自己的信息替换。

```
{
    "Sid": "Allow LakeFormation to access the key",
    "Effect": "Allow",
    "Principal": {
        "AWS": "arn:aws:iam::account:role/aws-service-role/lakeformation.amazonaws.com/AWSServiceRoleForLakeFormationDataAccess"
    },
    "Action": [
        "kms:Encrypt",
        "kms:Decrypt",
        "kms:ReEncrypt*",
        "kms:GenerateDataKey*",
        "kms:DescribeKey"
    ],
    "Resource": "*"
}
```