A logistics company utilizes AWS Organizations to manage 55 member accounts. The security team requires that all VPC Flow Logs from all VPCs across these member accounts be aggregated into a single, centrally managed Amazon S3 bucket located in a dedicated Security account. The S3 bucket must be encrypted at rest using an encryption key that allows the company to manage key rotation and access policies in compliance with internal security guidelines. The design must adhere to the principle of least privilege.
Which TWO actions must a Solutions Architect take to configure the Amazon S3 bucket and its encryption to support this centralized logging architecture?
- Configure the S3 bucket to use an AWS KMS Customer Managed Key (CMK) for encryption, and update the key policy to grant the delivery.logs.amazonaws.com service principal permissions for kms:GenerateDataKey* and kms:Decrypt.Cevap
- Apply an S3 bucket policy to the central logging bucket that allows the delivery.logs.amazonaws.com service principal to perform s3:PutObject and s3:GetBucketAcl actions.Cevap
- CConfigure the central S3 bucket to use the default AWS-managed KMS key (aws/s3) for server-side encryption, as this key automatically trusts and accepts cross-account log delivery requests from within the AWS Organization.
- DCreate an S3 bucket policy that permits s3:PutObject actions where the Principal is set to the IAM roles defined in each member account for publishing VPC Flow Logs.
- EApply a Service Control Policy (SCP) at the root of the AWS Organization that grants the s3:PutObject permission on the destination bucket to all accounts in the organization.
Cevap
Configure the S3 bucket to use an AWS KMS Customer Managed Key (CMK) and update its policy to allow the log delivery service principal. Additionally, configure the S3 bucket policy to allow the log delivery service principal to write objects and get bucket ACLs.
For cross-account VPC Flow Logs delivery, the logs are written by the AWS Log Delivery service principal (delivery.logs.amazonaws.com). Therefore, the S3 bucket policy in the central security account must explicitly allow this service principal to perform s3:PutObject and s3:GetBucketAcl actions. Furthermore, if KMS encryption is required, an AWS KMS Customer Managed Key (CMK) must be used. The KMS key policy must be updated to allow the delivery.logs.amazonaws.com service principal to run kms:GenerateDataKey* and kms:Decrypt, because the default AWS-managed KMS key (aws/s3) cannot be modified to delegate permissions to this service principal.
Adım Adım Çözüm
Anahtar Kavram
Cross-account log aggregation for VPC Flow Logs using the Log Delivery service principal, S3 bucket policies, and Customer Managed Keys (CMKs).
Tahmini Süre:2m 30s