View a markdown version of this page

在 Security Lake 中创建具有数据访问权限的订阅者的先决条件 - Amazon Security Lake

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

在 Security Lake 中创建具有数据访问权限的订阅者的先决条件

您必须实现以下先决条件才能在 Security Lake 中创建具有数据访问权限的订阅用户。

验证权限

要验证您的权限,请使用 IAM 查看附加到 IAM 身份的 IAM 策略。然后,将这些策略中的信息与以下(权限)操作列表进行比较。在新数据被写入数据湖时,您必须执行这些操作才能通知订阅用户。

您需要获得执行以下操作的权限:

  • iam:CreateRole

  • iam:DeleteRolePolicy

  • iam:GetRole

  • iam:PutRolePolicy

  • lakeformation:GrantPermissions

  • lakeformation:ListPermissions

  • lakeformation:RegisterResource

  • lakeformation:RevokePermissions

  • ram:GetResourceShareAssociations

  • ram:GetResourceShares

  • ram:UpdateResourceShare

除了上表之外,您还需要获得执行以下操作的权限:

  • events:CreateApiDestination

  • events:CreateConnection

  • events:DescribeRule

  • events:ListApiDestinations

  • events:ListConnections

  • events:PutRule

  • events:PutTargets

  • s3:GetBucketNotification

  • s3:PutBucketNotification

  • sqs:CreateQueue

  • sqs:DeleteQueue

  • sqs:GetQueueAttributes

  • sqs:GetQueueUrl

  • sqs:SetQueueAttributes

获取订阅用户的外部 ID

要创建订阅者,除了订阅者的 AWS 账户 ID外,您还需要获取他们的外部ID 。外部 ID 是订阅用户提供给您的唯一标识符。Security Lake 会将外部 ID 添加到其创建的订阅用户 IAM 角色中。在 Security Lake 控制台中通过 API 或 AWS CLI创建订阅用户时,您需要使用外部 ID。

有关外部 ID 的更多信息,请参阅 IAM 用户指南中的如何在向第三方授予 AWS 资源访问权限时使用外部 ID

重要

如果您打算使用 Security Lake 控制台添加订阅用户,可以跳过下一步,继续执行在 Security Lake 中创建具有数据访问权限的订户。Security Lake 控制台提供了简化的入门流程,可以为您创建所有必要的 IAM 角色或使用现有角色。

如果您计划使用 Security Lake API 或 AWS CLI 添加订阅者,请继续执行下一步创建 IAM 角色来调用 EventBridge API 目标。

创建 IAM 角色来调用 EventBridge API 目的地 (API 和 AWS CLI-仅步骤)

如果您通过 API 使用安全湖 AWS CLI,或者在 AWS Identity and Access Management (IAM) 中创建一个角色,授予亚马逊调用 API 目的地和向正确的 HTTPS 终端节点发送对象通知的 EventBridge 权限。

此 IAM 角色创建完成后,您需要提供角色的 Amazon 资源名称 (ARN) 才能创建订阅用户。如果订阅用户轮询某个 Amazon Simple Queue Service (Amazon SQS) 队列中的数据或直接从 AWS Lake Formation中查询数据,则不需要使用这一 IAM 角色。有关此类型的数据访问方法(访问类型)的更多信息,请参阅管理 Security Lake 订阅用户的查询访问权限

将以下策略附加到您的 IAM 角色:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "AllowInvokeApiDestination", "Effect": "Allow", "Action": [ "events:InvokeApiDestination" ], "Resource": [ "arn:aws:events:us-east-1:123456789012:api-destination/AmazonSecurityLake*/*" ] } ] }

将以下信任策略附加到您的 IAM 角色 EventBridge 以允许代入该角色:

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

Security Lake 会自动创建一个 IAM 角色,允许订阅用户从数据湖读取数据(或者从 Amazon SQS 队列中轮询事件,如果这是首选的通知方式)。此角色受名为的 AWS 托管策略的保护AmazonSecurityLakePermissionsBoundary