在 Security Lake 中設定彙總區域 - Amazon Security Lake

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

在 Security Lake 中設定彙總區域

彙總區域會合併來自一或多個貢獻區域的資料。指定彙總區域可協助您符合區域合規要求。

由於 Amazon S3 的限制,不支援從客戶受管金鑰 (CMK) 加密區域資料湖複寫到 S3 受管加密 (預設加密) 區域資料湖。

重要

如果您建立了自訂來源,為了確保自訂來源資料正確複寫至目的地,Security Lake 建議遵循擷取自訂來源的最佳實務中所述的最佳實務。複寫無法對未遵循 S3 分割區資料路徑格式的資料執行,如 頁面所述。

新增彙總區域之前,您必須先在 AWS Identity and Access Management () 中建立兩個不同的角色IAM:

注意

當您使用 Security Lake 主控台時,Security Lake 會代表您建立這些IAM角色或使用現有的角色。不過,在使用 Security Lake API或 時,您必須建立這些角色 AWS CLI。

IAM 資料複寫的 角色

此IAM角色會授予許可給 Amazon S3,以在多個區域中複寫來源日誌和事件。

若要授予這些許可,請建立以字首 開頭IAM的角色SecurityLake,並將下列範例政策連接至角色。在 Security Lake 中建立彙總區域時,您將需要角色的 Amazon Resource Name (ARN)。在此政策中, sourceRegions 正在貢獻區域, destinationRegions是彙總區域。

{ "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 擔任該角色:

{ "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 Simple Storage Service 使用者指南》中的設定許可

IAM 用於註冊 AWS Glue 分割區的角色

此IAM角色會授予 Security Lake 使用的分割區更新程式 AWS Lambda 函數的許可,以註冊從其他區域複寫的 S3 物件的 AWS Glue 分割區。如果不建立此角色,訂閱者就無法從這些物件查詢事件。

若要授予這些許可,請建立名為 的角色 AmazonSecurityLakeMetaStoreManager(您可能已在加入 Security Lake 時建立此角色)。如需此角色的詳細資訊,包括範例政策,請參閱 步驟 1:建立 IAM 角色

在 Lake Formation 主控台中,您還必須依照下列步驟,以資料湖管理員身分授予AmazonSecurityLakeMetaStoreManager許可:

  1. 在 開啟 Lake Formation 主控台https://console.aws.amazon.com/lakeformation/

  2. 以管理使用者身分登入。

  3. 如果出現歡迎使用 Lake Formation 視窗,請選擇您在步驟 1 中建立或選取的使用者,然後選擇開始使用。

  4. 如果您沒有看到歡迎使用 Lake Formation 視窗,請執行下列步驟來設定 Lake Formation 管理員。

    1. 在導覽窗格中的許可下,選擇管理角色和任務。在主控台頁面的資料湖管理員區段中,選擇選擇管理員

    2. 管理資料湖管理員對話方塊中,針對IAM使用者和角色,選擇您建立AmazonSecurityLakeMetaStoreManagerIAM的角色,然後選擇儲存

如需變更資料湖管理員許可的詳細資訊,請參閱《 AWS Lake Formation 開發人員指南》中的建立資料湖管理員

新增彙總區域

選擇您偏好的存取方法,並依照下列步驟新增彙總區域。

注意

區域可以將資料貢獻至多個彙總區域。不過,彙總區域不能是另一個彙總區域的貢獻區域。

Console
  1. 在 開啟 Security Lake 主控台https://console.aws.amazon.com/securitylake/

  2. 在導覽窗格中的設定下,選擇彙總區域

  3. 選擇修改,然後選擇新增彙總區域

  4. 指定彙總區域和貢獻區域。如果您想要新增多個彙總區域,請重複此步驟。

  5. 如果這是您第一次新增彙總區域,對於服務存取,請建立新的IAM角色或使用現有IAM角色,授予 Security Lake 跨多個區域複寫資料的許可。

  6. 完成後,請選擇儲存

您也可以在加入 Security Lake 時新增彙總區域。如需詳細資訊,請參閱Amazon Security Lake 入門

API

若要以程式設計方式新增彙總區域,請使用 UpdateDataLake Security Lake 的操作API。如果您使用的是 AWS CLI,請執行 update-data-lake 命令。在請求中,使用 region 欄位指定您要將資料貢獻至彙總區域的區域。在 replicationConfiguration 參數regions陣列中,指定每個彙總區域的區域代碼。如需區域代碼清單,請參閱 中的 Amazon Security Lake 端點AWS 一般參考

例如,下列命令集ap-northeast-2會設定為彙總區域。us-east-1 區域會將資料貢獻至 ap-northeast-2區域。此範例也會為新增至資料湖的物件建立 365 天的過期期間。此範例已針對 Linux、macOS 或 Unix 格式化,並使用反斜線 (\) 行接續字元來改善可讀性。

$ 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 時新增彙總區域。若要這樣做,請使用 CreateDataLake 操作 (或者,如果使用 AWS CLI,則為 create-data-lake命令)。如需在加入期間設定彙總區域的詳細資訊,請參閱 Amazon Security Lake 入門

更新或移除彙總區域

選擇您偏好的存取方法,並依照下列步驟,在 Security Lake 中更新或移除彙總區域。

Console
  1. 在 開啟 Security Lake 主控台https://console.aws.amazon.com/securitylake/

  2. 在導覽窗格中的設定下,選擇彙總區域

  3. 選擇 Modify (修改)。

  4. 若要變更彙總區域的貢獻區域,請在彙總區域的 列中指定更新的貢獻區域。

  5. 若要移除彙總區域,請在彙總區域的資料列中選擇移除

  6. 完成後,請選擇儲存

API

若要以程式設計方式設定彙總區域,請使用 UpdateDataLake Security Lake 的操作API。如果您使用的是 AWS CLI,請執行 update-data-lake 命令。在您的請求中,使用支援的參數來指定彙總設定:

  • 若要新增貢獻區域,請使用 region 欄位來指定要新增區域的區域代碼。在replicationConfiguration物件regions陣列中,指定每個彙總區域的區域代碼,以貢獻資料。如需區域代碼清單,請參閱 中的 Amazon Security Lake 端點AWS 一般參考

  • 若要移除貢獻區域,請使用 region 欄位指定要移除區域的區域代碼。針對 replicationConfiguration 參數,請勿指定任何值。

例如,下列命令會將 us-east-1和 設定為us-east-2貢獻區域。這兩個區域都會將資料貢獻至ap-northeast-3彙總區域。此範例已針對 Linux、macOS 或 Unix 格式化,並使用反斜線 (\) 行接續字元來改善可讀性。

$ 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"}]}}]'