在 Amaz OpenSearch on Security Lake 中使用采集管道 - 亚马逊 OpenSearch 服务
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

在 Amaz OpenSearch on Security Lake 中使用采集管道

您可以使用 S3 源插件将来自 A mazon Security Lake 的数据提取到您的 OpenSearch 摄取管道中。Security Lake 会自动将来自 Amazon 环境、本地环境和 SaaS 提供商的安全数据集中到专门构建的数据湖中。您可以创建订阅,将数据从 Security Lake 复制到您的 OpenSearch 摄取管道,然后由该渠道将其写入您的 OpenSearch 服务域或 OpenSearch 无服务器集合。

要将您的管道配置为从安全湖读取,请使用名为 AW SecurityLake S-s3parquetocs fPipeline 的安全湖蓝图。蓝图包括用于从 Security Lake 摄取开放式网络安全架构框架 (OCSF) parquet 文件的默认配置。有关更多信息,请参阅 使用蓝图创建管道

先决条件

在创建 OpenSearch Ingestion 管道之前,请执行以下步骤:

  • 启用 Security Lake

  • 在 Security Lake 中创建订阅用户

    • 选择要摄取到管道的源。

    • 对于订阅用户凭证,请添加计划在其中创建管道的 Amazon Web Services 账户 的 ID。对于外部 ID,请指定 OpenSearchIngestion-{accountid}

    • 对于数据访问方法,请选择 S3

    • 有关通知详细信息,请选择 SQS 队列

创建订阅用户时,Security Lake 将自动创建两个内联权限策略,一个用于 S3,一个用于 SQS。策略采用以下格式:AmazonSecurityLake-{12345}-S3AmazonSecurityLake-{12345}-SQS。要允许管道访问订阅用户源,必须将必需权限与管道角色进行关联。

步骤 1:配置管道角色

在 IAM 中创建新的权限策略,仅组合 Security Lake 自动创建的两个策略中的必需权限。以下示例策略显示了 OpenSearch 摄取管道从多个 Security Lake 来源读取数据所需的最低权限:

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "s3:GetObject" ], "Resource":[ "arn:aws:s3:::aws-security-data-lake-{region}-abcde/aws/LAMBDA_EXECUTION/1.0/*", "arn:aws:s3:::aws-security-data-lake-{region}-abcde/aws/S3_DATA/1.0/*", "arn:aws:s3:::aws-security-data-lake-{region}-abcde/aws/VPC_FLOW/1.0/*", "arn:aws:s3:::aws-security-data-lake-{region}-abcde/aws/ROUTE53/1.0/*", "arn:aws:s3:::aws-security-data-lake-{region}-abcde/aws/SH_FINDINGS/1.0/*" ] }, { "Effect":"Allow", "Action":[ "sqs:ReceiveMessage", "sqs:DeleteMessage" ], "Resource":[ "arn:aws:sqs:{region}:{account-id}:AmazonSecurityLake-abcde-Main-Queue" ] } ] }
重要

Security Lake 不负责为您管理管道角色策略。如果向 Security Lake 订阅中添加源或从中删除源,则必须手动更新政策。Security Lake 将为每个日志源创建分区,因此您需要在管道角色中手动添加或删除权限。

必须将以下权限附加到在 S3 源插件配置的 sts_role_arn 选项的 sqs 下指定的 IAM 角色。

version: "2" source: s3: ... sqs: queue_url: "https://sqs.{region}.amazonaws.com/{account-id}/AmazonSecurityLake-abcde-Main-Queue" aws: ... sts_role_arn: arn:aws:iam::{account-id}:role/pipeline-role processor: ... sink: - opensearch: ...

步骤 2:创建管道

向管道角色添加权限后,使用 AW SecurityLake S-s3parquetocsfPipeline 蓝图创建管道。有关更多信息,请参阅 使用蓝图创建管道

必须在 s3 源配置中指定 queue_url 选项,即要读取的 Amazon SQS 队列 URL。要设置 URL 格式,请在订阅用户配置中找到订阅端点,将 arn:aws: 更改为 https://。例如,https://sqs.{region}.amazonaws.com/{account-id}/AmazonSecurityLake-abdcef-Main-Queue

在 S3 源配置中指定的 sts_role_arn 必须是管道角色 ARN。