Which solution will accomplish this?
Create an AWS CloudFormation template that defines an AWS Inspector rule to check whether EBS encryption is enabled. Save the template to an Amazon S3 bucket that has been shared with all accounts within the company. Update the account creation script pointing to the CloudFormation template in Amazon S3.
Create an AWS Config organizational rule to check whether EBS encryption is enabled and deploy the rule using the AWS CLI. Create and apply an SCP to prohibit stopping and deleting AWS Config across the organization.
Create an SCP in Organizations. Set the policy to prevent the launch of Amazon EC2 instances without encryption on the EBS volumes using a conditional expression. Apply the SCP to all AWS accounts. Use Amazon Athena to analyze the AWS CloudTrail output, looking for events that deny an ec2:RunInstances action.
Deploy an IAM role to all accounts from a single trusted account. Build a pipeline with AWS CodePipeline with a stage in AWS Lambda to assume the IAM role, and list all EBS volumes in the account. Publish a report to Amazon S3.
Explanations:
AWS CloudFormation is not suited to enforce compliance checks like EBS encryption. It is used for provisioning resources, not for ongoing compliance monitoring.
AWS Config organizational rules can be used to check compliance across multiple accounts. The rule can check for EBS encryption, and SCPs can prevent AWS Config from being disabled.
SCPs can only restrict actions; they can’t check for compliance directly. Athena and CloudTrail are used for analysis, not for enforcing encryption compliance.
While IAM roles and Lambda can be used for reporting, this option lacks enforcement and automated compliance checks. It focuses on reporting rather than remediation.