Type ISecurityConfig
File match security-config.yaml
Schema URL https://catalog.lintel.tools/schemas/schemastore/landing-zone-accelerator-on-aws-security-config/latest.json
Source https://raw.githubusercontent.com/awslabs/landing-zone-accelerator-on-aws/main/source/packages/@aws-accelerator/config/lib/schemas/security-config.json

Validate with Lintel

npx @lintel/lintel check
Type: ISecurityConfig

Definitions

IAccessAnalyzerConfig object

Configuration for AWS Identity and Access Management (IAM) Access Analyzer that identifies resources with external access and helps implement least privilege by analyzing resource policies for security risks.

enable boolean required

Controls whether AWS IAM Access Analyzer is enabled across your organization.

IAlarmConfig object

Configuration for CloudWatch alarms that monitor metrics and trigger notifications when thresholds are breached.

alarmDescription string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
alarmName string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
comparisonOperator string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
evaluationPeriods number required

The number of consecutive periods over which the threshold must be breached for the alarm to trigger.

metricName string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
namespace string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
period number required

The length of each evaluation period in seconds.

statistic string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
threshold number required

The threshold value that the metric statistic is compared against to determine alarm state. When the metric breaches this threshold according to the comparison operator, the alarm will transition to the ALARM state and trigger notifications.

treatMissingData string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
snsAlertLevel string

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
snsTopicName string

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
IAlarmSetConfig object

Configuration for a set of CloudWatch alarms that will be deployed together to specific regions and organizational units.

alarms IAlarmConfig[] required

Array of CloudWatch alarm configurations to deploy as part of this alarm set.

deploymentTargets object required

Deployment Targets Interface

Defines where AWS resources should be deployed within your AWS organization. This interface provides flexible targeting options for resource deployment across accounts, organizational units, and regions.

Key Features

  • Account-level targeting: Deploy to specific AWS accounts
  • OU-level targeting: Deploy to all accounts within organizational units
  • Regional exclusions: Skip specific AWS regions for compliance or cost optimization
  • Account exclusions: Exclude specific accounts from broader deployments

Example

yaml deploymentTargets: organizationalUnits: - Production - Development excludedAccounts: - Management excludedRegions: - us-west-1

4 nested properties
accounts string[]

Target Accounts (Optional)

List of specific account names where resources should be deployed. Use for precise account-level targeting.

excludedAccounts string[]

Excluded Accounts (Optional)

List of account names to exclude from deployment. Takes precedence over organizational unit and account inclusions.

excludedRegions string[]

Excluded Regions (Optional)

List of AWS regions to exclude from deployment. Useful for compliance requirements or cost optimization.

organizationalUnits string[]

Organizational Units (Optional)

List of organizational unit names where resources should be deployed. When specified, resources will be created in all accounts within these OUs.

regions string[]

AWS regions where the CloudWatch alarms will be deployed.

IAuditManagerConfig object

Configuration for AWS Audit Manager, a service that helps you continually audit your AWS usage to simplify how you manage risk and compliance with regulations and industry standards. Use this configuration to enable AWS Audit Manager for an AWS Organization. Audit Manager automates evidence collection so you can more easily assess whether your policies, procedures, and activities are operating effectively.

defaultReportsConfiguration object required

Configuration for specifying where AWS Audit Manager stores compliance assessment reports Use this configuration to enable a destination for reports generated by AWS Audit Manager.

2 nested properties
destinationType string required

The type of resource for storing audit reports. Currently only Amazon S3 buckets are supported.

Constant: "S3"
enable boolean required

Controls whether AWS Audit Manager Default Reports destination is enabled. When enabled, compliance reports are automatically saved to the specified destination for audit trail purposes.

enable boolean required

Controls whether AWS Audit Manager is enabled across your organization.

excludeRegions string[]

List of AWS regions where Audit Manager should not be enabled.

lifecycleRules ILifecycleRule[]

S3 lifecycle rules that automatically manage the retention and deletion of Audit Manager reports and evidence stored in S3.

IAuditManagerDefaultReportsDestinationConfig object

Configuration for specifying where AWS Audit Manager stores compliance assessment reports Use this configuration to enable a destination for reports generated by AWS Audit Manager.

destinationType string required

The type of resource for storing audit reports. Currently only Amazon S3 buckets are supported.

Constant: "S3"
enable boolean required

Controls whether AWS Audit Manager Default Reports destination is enabled. When enabled, compliance reports are automatically saved to the specified destination for audit trail purposes.

IAwsConfig object

Configuration for AWS Config service that enables continuous monitoring and assessment of AWS resource configurations for compliance, security, and governance. This service records configuration changes, evaluates resources against compliance rules, and provides centralized visibility into your AWS environment's configuration state.

enableConfigurationRecorder boolean required

Controls whether the AWS Config configuration recorder is enabled to track resource changes.

aggregation object

Configuration for AWS Config aggregation that centralizes compliance data from multiple accounts and regions into a single location for organization-wide visibility and reporting. This enables centralized compliance monitoring and simplifies governance oversight across your entire AWS Organization.

2 nested properties
enable boolean required

Controls whether AWS Config aggregation is enabled across your organization. When enabled, compliance data from all accounts and regions will be centralized for unified reporting and governance oversight.

delegatedAdminAccount string

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
deploymentTargets object

Deployment Targets Interface

Defines where AWS resources should be deployed within your AWS organization. This interface provides flexible targeting options for resource deployment across accounts, organizational units, and regions.

Key Features

  • Account-level targeting: Deploy to specific AWS accounts
  • OU-level targeting: Deploy to all accounts within organizational units
  • Regional exclusions: Skip specific AWS regions for compliance or cost optimization
  • Account exclusions: Exclude specific accounts from broader deployments

Example

yaml deploymentTargets: organizationalUnits: - Production - Development excludedAccounts: - Management excludedRegions: - us-west-1

4 nested properties
accounts string[]

Target Accounts (Optional)

List of specific account names where resources should be deployed. Use for precise account-level targeting.

excludedAccounts string[]

Excluded Accounts (Optional)

List of account names to exclude from deployment. Takes precedence over organizational unit and account inclusions.

excludedRegions string[]

Excluded Regions (Optional)

List of AWS regions to exclude from deployment. Useful for compliance requirements or cost optimization.

organizationalUnits string[]

Organizational Units (Optional)

List of organizational unit names where resources should be deployed. When specified, resources will be created in all accounts within these OUs.

enableDeliveryChannel boolean

Controls whether the delivery channel is enabled for sending configuration changes to S3.

overrideExisting boolean

Controls whether to override existing Config recorder settings in accounts that already have Config enabled.

Array of Config rule sets that define compliance checks to be deployed across your organization.

useServiceLinkedRole boolean

Controls whether to use AWS service-linked roles for Config instead of custom IAM roles created by LZA.

IAwsConfigAggregation object

Configuration for AWS Config aggregation that centralizes compliance data from multiple accounts and regions into a single location for organization-wide visibility and reporting. This enables centralized compliance monitoring and simplifies governance oversight across your entire AWS Organization.

enable boolean required

Controls whether AWS Config aggregation is enabled across your organization. When enabled, compliance data from all accounts and regions will be centralized for unified reporting and governance oversight.

delegatedAdminAccount string

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
IAwsConfigRuleSet object

Configuration for a set of AWS Config rules that will be deployed together to specific organizational units or accounts.

deploymentTargets object required

Deployment Targets Interface

Defines where AWS resources should be deployed within your AWS organization. This interface provides flexible targeting options for resource deployment across accounts, organizational units, and regions.

Key Features

  • Account-level targeting: Deploy to specific AWS accounts
  • OU-level targeting: Deploy to all accounts within organizational units
  • Regional exclusions: Skip specific AWS regions for compliance or cost optimization
  • Account exclusions: Exclude specific accounts from broader deployments

Example

yaml deploymentTargets: organizationalUnits: - Production - Development excludedAccounts: - Management excludedRegions: - us-west-1

4 nested properties
accounts string[]

Target Accounts (Optional)

List of specific account names where resources should be deployed. Use for precise account-level targeting.

excludedAccounts string[]

Excluded Accounts (Optional)

List of account names to exclude from deployment. Takes precedence over organizational unit and account inclusions.

excludedRegions string[]

Excluded Regions (Optional)

List of AWS regions to exclude from deployment. Useful for compliance requirements or cost optimization.

organizationalUnits string[]

Organizational Units (Optional)

List of organizational unit names where resources should be deployed. When specified, resources will be created in all accounts within these OUs.

rules IConfigRule[] required

Array of AWS Config rules to deploy as part of this rule set.

IBlockPublicDocumentSharingConfig object

This interface defines the SSM Block Public Document Sharing configuration for organization accounts. SSM Block Public Document Sharing prevents AWS Systems Manager documents from being shared publicly, providing an additional layer of security for organizations. The feature operates on a per-region basis and is applied across all enabled regions for comprehensive protection.

enable boolean required

Indicates whether SSM Block Public Document Sharing is enabled across the organization. When true, blocks public document sharing on all accounts except those in excludeAccounts. When false, allows public document sharing on all accounts. This setting is applied in all enabled regions for comprehensive security coverage.

excludeAccounts string[]

List of AWS Account names to be excluded from SSM Block Public Document Sharing configuration. Accounts in this list will have public document sharing allowed regardless of the enable setting. Account names must match those defined in the accounts configuration. Exclusions are applied across all enabled regions.

ICentralSecurityServicesConfig object

Configuration for centralized security services that provides organization-wide security controls and monitoring capabilities. This configuration enables and manages core AWS security services including GuardDuty, Security Hub, Macie, Detective, and Audit Manager across your entire AWS Organization. It establishes a centralized security posture with consistent policies, automated threat detection, compliance monitoring, and unified security findings management to help organizations maintain strong security governance at scale.

delegatedAdminAccount string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
ebsDefaultVolumeEncryption object required

Configuration for enabling automatic encryption of all new EBS volumes and snapshots in your AWS environment..

4 nested properties
enable boolean required

Controls whether EBS default volume encryption is enabled. When enabled, all new EBS volumes created in the specified accounts and regions will be encrypted by default.

deploymentTargets object

Deployment Targets Interface

Defines where AWS resources should be deployed within your AWS organization. This interface provides flexible targeting options for resource deployment across accounts, organizational units, and regions.

Key Features

  • Account-level targeting: Deploy to specific AWS accounts
  • OU-level targeting: Deploy to all accounts within organizational units
  • Regional exclusions: Skip specific AWS regions for compliance or cost optimization
  • Account exclusions: Exclude specific accounts from broader deployments

Example

yaml deploymentTargets: organizationalUnits: - Production - Development excludedAccounts: - Management excludedRegions: - us-west-1

4 nested properties
accounts string[]

Target Accounts (Optional)

List of specific account names where resources should be deployed. Use for precise account-level targeting.

excludedAccounts string[]

Excluded Accounts (Optional)

List of account names to exclude from deployment. Takes precedence over organizational unit and account inclusions.

excludedRegions string[]

Excluded Regions (Optional)

List of AWS regions to exclude from deployment. Useful for compliance requirements or cost optimization.

organizationalUnits string[]

Organizational Units (Optional)

List of organizational unit names where resources should be deployed. When specified, resources will be created in all accounts within these OUs.

excludeRegions string[]

List of AWS regions where EBS default volume encryption should not be enabled.

kmsKey string

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
guardduty object required

Configuration for Amazon GuardDuty, a threat detection service that monitors your AWS environment for malicious activity. Use this configuration to enable Amazon GuardDuty for an AWS Organization and configure which AWS services should be monitored for security threats.

12 nested properties
enable boolean required

Controls whether GuardDuty is enabled across your organization to monitor for security threats.

exportConfiguration object required

Configuration for exporting GuardDuty security findings to an Amazon S3 bucket for long-term storage and analysis.

5 nested properties
destinationType string required

The type of resource for the publishing destination. Currently only Amazon S3 buckets are supported.

Constant: "S3"
enable boolean required

Controls whether GuardDuty findings are automatically exported to an S3 bucket.

exportFrequency string required

An enum value that specifies how frequently findings are exported to the S3 bucket. Possible values FIFTEEN_MINUTES, ONE_HOUR, or SIX_HOURS

Values: "FIFTEEN_MINUTES" "ONE_HOUR" "SIX_HOURS"
overrideExisting boolean

Controls whether existing export configurations can be overwritten with new settings.

overrideGuardDutyPrefix object

Centralized Logging Prefix Configuration Interface

Configuration interface for customizing the S3 prefix structure used in centralized logging buckets. Allows organizations to override the default LZA logging path structure to meet specific organizational or compliance requirements.

Key Features

  • Custom Prefixes: Override default LZA logging path structure
  • Organizational Alignment: Align with existing logging conventions
  • Compliance: Meet specific regulatory path requirements
  • Flexibility: Maintain consistency across different log types

Example

yaml prefixConfig: useCustomPrefix: true customOverride: compliance/audit-logs

s3Protection object required

Configuration for enabling S3 protection with Amazon GuardDuty to detect suspicious and malicious activity in your S3 buckets. Use this configuration to enable S3 Protection with Amazon GuardDuty to monitor object-level API operations for potential security risks for data within Amazon S3 buckets.

2 nested properties
enable boolean required

Controls whether GuardDuty S3 protection is enabled to monitor your S3 buckets for suspicious activity.

excludeRegions string[]

List of AWS regions where Amazon GuardDuty S3 protection should not be enabled.

autoEnableOrgMembers boolean

Controls whether GuardDuty is automatically enabled for new accounts joining the organization.

Default: true
deploymentTargets object

Deployment Targets Interface

Defines where AWS resources should be deployed within your AWS organization. This interface provides flexible targeting options for resource deployment across accounts, organizational units, and regions.

Key Features

  • Account-level targeting: Deploy to specific AWS accounts
  • OU-level targeting: Deploy to all accounts within organizational units
  • Regional exclusions: Skip specific AWS regions for compliance or cost optimization
  • Account exclusions: Exclude specific accounts from broader deployments

Example

yaml deploymentTargets: organizationalUnits: - Production - Development excludedAccounts: - Management excludedRegions: - us-west-1

4 nested properties
accounts string[]

Target Accounts (Optional)

List of specific account names where resources should be deployed. Use for precise account-level targeting.

excludedAccounts string[]

Excluded Accounts (Optional)

List of account names to exclude from deployment. Takes precedence over organizational unit and account inclusions.

excludedRegions string[]

Excluded Regions (Optional)

List of AWS regions to exclude from deployment. Useful for compliance requirements or cost optimization.

organizationalUnits string[]

Organizational Units (Optional)

List of organizational unit names where resources should be deployed. When specified, resources will be created in all accounts within these OUs.

ec2Protection object

Configuration for GuardDuty for EC2 malware protection that scans EC2 instances and EBS volumes for malicious software. EC2 Malware Protection helps you detect malware and other security threats on your EC2 instances.

3 nested properties
enable boolean required

Controls whether GuardDuty EC2 Malware Protection is enabled to scan your EC2 instances for malware.

keepSnapshots boolean required

Controls whether EBS snapshots created during malware scanning are retained. When enables, snapshots are preserved.

excludeRegions string[]

List of AWS regions where GuardDuty EC2 Malware Protection should not be enabled.

eksProtection object

Configuration for GuardDuty EKS (Elastic Kubernetes Service) protection that monitors Amazon Elastic Kubernetes Service clusters for security threats. EKS Protection helps you detect potential security risks in Amazon EKS clusters.

3 nested properties
enable boolean required

Controls whether GuardDuty EKS Protection is enabled to monitor your EKS clusters for security threats.

excludeRegions string[]

List of AWS regions where GuardDuty EKS protection should not be enabled.

manageAgent boolean

Controls whether the GuardDuty EKS Agent is managed.

excludeRegions string[]

List of AWS regions where GuardDuty should not be enabled.

lambdaProtection object

AWS GuardDuty Lambda Malware Protection configuration.

2 nested properties
enable boolean required

Controls whether GuardDuty Lambda Protection is enabled to monitor your Lambda functions for security threats.

excludeRegions string[]

List of AWS regions where GuardDuty Lambda Protection should not be enabled.

lifecycleRules ILifecycleRule[]

S3 lifecycle rules that automatically manage the retention and deletion of GuardDuty findings stored in S3.

rdsProtection object

Configuration for GuardDuty RDS (Relational Database Service) protection that monitors Amazon RDS instances for security threats. RDS Protection helps you detect potential security risks in your RDS databases.

2 nested properties
enable boolean required

Controls whether GuardDuty RDS Protection is enabled to monitor your RDS databases for security threats..

excludeRegions string[]

List of AWS regions where GuardDuty RDS Protection should not be enabled.

s3MalwareProtection object

Use this configuration to define an Amazon GuardDuty S3 Malware Protection Plan to an Amazon S3 bucket.

2 nested properties
enable boolean required

Indicates whether AWS GuardDuty S3 Malware Protection is enabled.

s3Configurations IMalwareProtectionConfig[]

(OPTIONAL) The S3 Malware Protection Configuration. Provide this configuration when enabling this feature.

macie object required

Configuration for Amazon Macie, a data security service that discovers, classifies, and protects sensitive data. Use this configuration to enable Amazon Macie within your AWS Organization along with it's reporting configuration.

6 nested properties
enable boolean required

Controls whether AWS Macie is enabled across your organization

publishSensitiveDataFindings boolean required

Specifies whether to publish sensitive data findings to Security Hub. If you set this value to true, Amazon Macie automatically publishes all sensitive data findings that weren't suppressed by a findings filter. Default value is false.

excludeRegions string[]

List of AWS Region names to be excluded from configuring Amazon Macie.

lifecycleRules ILifecycleRule[]

Declaration of S3 Lifecycle rules that automatically manage the retention and deletion for Macie findings reports stored in S3.

policyFindingsPublishingFrequency string

Specifies how frequently findings are published to Security Hub. Possible values: FIFTEEN_MINUTES, ONE_HOUR, or SIX_HOURS

Values: "FIFTEEN_MINUTES" "ONE_HOUR" "SIX_HOURS"
publishPolicyFindings boolean

Specifies whether to publish findings to Security Hub and EventBridge

s3PublicAccessBlock object required

Configuration for preventing accidental public exposure of S3 buckets and objects across your organization. When enabled, this setting applies organization-wide security guardrails that prevent users from accidentally making S3 buckets or objects publicly accessible.

2 nested properties
enable boolean required

Indicates whether S3 public access blocking is enforced across all accounts in your organization.

excludeAccounts string[]

List of AWS account names that should be exempted from S3 public access blocking requirements.

securityHub object required

Configuration for Amazon Security Hub, a centralized security findings management service that aggregates security alerts from multiple AWS security services. Use this configuration to enable Amazon Security Hub for an AWS Organization along with it's auditing configuration.

Default: "logLevel HIGH"
10 nested properties
enable boolean required

Controls whether AWS Security Hub is enabled across your organization

standards ISecurityHubStandardConfig[] required

List of security and compliance standards that Security Hub will monitor across your organization.

autoEnableOrgMembers boolean

Controls whether Security Hub is automatically enabled for new accounts joining the organization.

Default: true

Configuration for Security Hub automation rules that automatically update findings based on specified criteria.

deploymentTargets object

Deployment Targets Interface

Defines where AWS resources should be deployed within your AWS organization. This interface provides flexible targeting options for resource deployment across accounts, organizational units, and regions.

Key Features

  • Account-level targeting: Deploy to specific AWS accounts
  • OU-level targeting: Deploy to all accounts within organizational units
  • Regional exclusions: Skip specific AWS regions for compliance or cost optimization
  • Account exclusions: Exclude specific accounts from broader deployments

Example

yaml deploymentTargets: organizationalUnits: - Production - Development excludedAccounts: - Management excludedRegions: - us-west-1

4 nested properties
accounts string[]

Target Accounts (Optional)

List of specific account names where resources should be deployed. Use for precise account-level targeting.

excludedAccounts string[]

Excluded Accounts (Optional)

List of account names to exclude from deployment. Takes precedence over organizational unit and account inclusions.

excludedRegions string[]

Excluded Regions (Optional)

List of AWS regions to exclude from deployment. Useful for compliance requirements or cost optimization.

organizationalUnits string[]

Organizational Units (Optional)

List of organizational unit names where resources should be deployed. When specified, resources will be created in all accounts within these OUs.

excludeRegions string[]

List of AWS regions where Security Hub should not be enabled.

logging object

Configuration for Security Hub logging destinations that determines where security findings are stored for analysis. This configuration allows you to centralize Security Hub findings in CloudWatch Logs for integration with your monitoring and alerting infrastructure.

1 nested properties
cloudWatch object

Configuration for forwarding Security Hub findings to CloudWatch for centralized monitoring and analysis.

Default: "logLevel HIGH"
notificationLevel string

Minimum severity level for findings that will trigger SNS notifications.

regionAggregation boolean

Controls whether Security Hub findings from all regions are aggregated in your organization's home region.

snsTopicName string

Name of the SNS topic that will receive Security Hub notifications.

ssmAutomation object required

Configuration for AWS Systems Manager (SSM) automation that enables centralized management and distribution of SSM documents across your AWS Organization.

2 nested properties
documentSets IDocumentSetConfig[] required

Array of document sets that define which SSM documents to create and share across organizational units.

excludeRegions string[]

List of AWS regions where SSM automation documents should not be deployed.

auditManager object

Configuration for AWS Audit Manager, a service that helps you continually audit your AWS usage to simplify how you manage risk and compliance with regulations and industry standards. Use this configuration to enable AWS Audit Manager for an AWS Organization. Audit Manager automates evidence collection so you can more easily assess whether your policies, procedures, and activities are operating effectively.

4 nested properties
defaultReportsConfiguration object required

Configuration for specifying where AWS Audit Manager stores compliance assessment reports Use this configuration to enable a destination for reports generated by AWS Audit Manager.

2 nested properties
destinationType string required

The type of resource for storing audit reports. Currently only Amazon S3 buckets are supported.

Constant: "S3"
enable boolean required

Controls whether AWS Audit Manager Default Reports destination is enabled. When enabled, compliance reports are automatically saved to the specified destination for audit trail purposes.

enable boolean required

Controls whether AWS Audit Manager is enabled across your organization.

excludeRegions string[]

List of AWS regions where Audit Manager should not be enabled.

lifecycleRules ILifecycleRule[]

S3 lifecycle rules that automatically manage the retention and deletion of Audit Manager reports and evidence stored in S3.

detective object

Configuration for Amazon Detective, a security service that helps you analyze, investigate, and quickly identify the root cause of security findings. Use this configuration to enable Amazon Detective for an AWS Organization.

2 nested properties
enable boolean required

Controls whether Amazon Detective is enabled across your organization.

excludeRegions string[]

List of AWS regions where Detective should not be enabled.

scpRevertChangesConfig object

Configuration for automatically detecting and reverting manual changes to Service Control Policies (SCPs). This securty control helps maintain governance by ensuring that security policies cannot be modified outside of your approved change management process. When enabled, any manual changes to SCPs will be automatically reverted and security teams will be notified of the attempted modification.

2 nested properties
enable boolean required

Indicates whether manual changes to Service Control Policies are automatically detected and reverted.

snsTopicName string

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
snsSubscriptions ISnsSubscriptionConfig[]

Configuration for SNS notification subscriptions for security alerts (DEPRECATED).

ssmSettings object

Configuration for AWS Systems Manager (SSM) security settings and controls across your organization. This enables centralized management of SSM security features to ensure secure and governed access to your managed resources while preventing unauthorized sharing of sensitive automation documents.

1 nested properties
blockPublicDocumentSharing object

This interface defines the SSM Block Public Document Sharing configuration for organization accounts. SSM Block Public Document Sharing prevents AWS Systems Manager documents from being shared publicly, providing an additional layer of security for organizations. The feature operates on a per-region basis and is applied across all enabled regions for comprehensive protection.

2 nested properties
enable boolean required

Indicates whether SSM Block Public Document Sharing is enabled across the organization. When true, blocks public document sharing on all accounts except those in excludeAccounts. When false, allows public document sharing on all accounts. This setting is applied in all enabled regions for comprehensive security coverage.

excludeAccounts string[]

List of AWS Account names to be excluded from SSM Block Public Document Sharing configuration. Accounts in this list will have public document sharing allowed regardless of the enable setting. Account names must match those defined in the accounts configuration. Exclusions are applied across all enabled regions.

ICloudWatchConfig object

Configuration for AWS CloudWatch monitoring and logging services across your organization.

alarmSets IAlarmSetConfig[] required

Array of alarm sets that monitor metrics and trigger notifications when thresholds are breached.

metricSets IMetricSetConfig[] required

Array of metric filter sets that extract metrics from log data for monitoring and alerting.

logGroups ILogGroupsConfig[]

Array of CloudWatch log group configurations for centralized log management.

IConfigRule object

Configuration for AWS Config rules that evaluate AWS resource compliance against organizational policies and best practices. Config rules can be either AWS-managed rules (pre-built compliance checks) or custom rules (organization-specific logic) and can include automated remediation to restore compliance when violations are detected.

name string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
complianceResourceTypes NonEmptyString[]

Array of AWS resource types that this rule will evaluate for compliance.

customRule object

Configuration for custom AWS Config rules that use Lambda functions to evaluate resource compliance.

5 nested properties
lambda object required

Configuration for AWS Lambda functions that implement custom AWS Config rules for compliance monitoring.

5 nested properties
handler string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
rolePolicyFile string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
runtime string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
sourceFilePath string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
timeout number

Maximum execution time for the Lambda function in seconds.

maximumExecutionFrequency string required

The frequency at which periodic evaluations are performed.

Default: "MaximumExecutionFrequency.TWENTY_FOUR_HOURS"
triggeringResources object required

Configuration for defining which AWS resources trigger evaluations for custom AWS Config rules.

3 nested properties
lookupKey string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
lookupType string required

The method used to identify which resources should trigger Config rule evaluations. This determines how the Config rule will find and evaluate AWS resources for compliance.

lookupValue NonEmptyString[] required

Array of values used to match resources based on the lookup type and key.

configurationChanges boolean

Controls whether the rule runs when AWS resource configurations change. When enabled, the rule will immediately evaluate affected resources whenever their configuration is modified.

Default: false
periodic boolean

Controls whether the rule runs on a scheduled basis at regular intervals. When enabled, the rule will evaluate resources according to the specified frequency.

Default: true
description string

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
identifier string

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
inputParameters object | null

Key-value pairs that provide configuration parameters to the Config rule.

remediation object

Configuration for automated remediation actions that AWS Config executes when resources are found non-compliant. This enables automatic correction of compliance violations using AWS Systems Manager automation documents, reducing manual intervention and ensuring continuous compliance across your AWS environment.

10 nested properties
automatic boolean required

Controls whether remediation actions are triggered automatically when non-compliance is detected. When enabled, AWS Config will immediately attempt to remediate non-compliant resources without manual intervention.

rolePolicyFile string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
targetId string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
excludeRegions string[]

List of AWS regions where this remediation should not be applied.

maximumAutomaticAttempts number

The maximum number of remediation attempts for a single non-compliant resource. This prevents infinite retry loops while allowing for temporary failures to be resolved. After reaching this limit, manual intervention may be required.

Default: "5 attempts"

Array of input parameters to pass to the remediation automation document. These parameters provide the necessary context and data for the automation document to perform the appropriate corrective actions on non-compliant resources.

retryAttemptSeconds number

Maximum time in seconds that AWS Config waits for each remediation attempt to complete. This prevents remediation actions from running indefinitely and ensures timely failure detection.

Default: "60 seconds"
targetAccountName string

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
targetDocumentLambda object

Configuration for AWS Lambda functions that implement custom AWS Config rules for compliance monitoring.

5 nested properties
handler string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
rolePolicyFile string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
runtime string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
sourceFilePath string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
timeout number

Maximum execution time for the Lambda function in seconds.

targetVersion string

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
tags ITag[]

Key-value pairs to assign as tags to the Config rule.

type string

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
IConfigRuleRemediationType object

Configuration for automated remediation actions that AWS Config executes when resources are found non-compliant. This enables automatic correction of compliance violations using AWS Systems Manager automation documents, reducing manual intervention and ensuring continuous compliance across your AWS environment.

automatic boolean required

Controls whether remediation actions are triggered automatically when non-compliance is detected. When enabled, AWS Config will immediately attempt to remediate non-compliant resources without manual intervention.

rolePolicyFile string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
targetId string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
excludeRegions string[]

List of AWS regions where this remediation should not be applied.

maximumAutomaticAttempts number

The maximum number of remediation attempts for a single non-compliant resource. This prevents infinite retry loops while allowing for temporary failures to be resolved. After reaching this limit, manual intervention may be required.

Default: "5 attempts"

Array of input parameters to pass to the remediation automation document. These parameters provide the necessary context and data for the automation document to perform the appropriate corrective actions on non-compliant resources.

retryAttemptSeconds number

Maximum time in seconds that AWS Config waits for each remediation attempt to complete. This prevents remediation actions from running indefinitely and ensures timely failure detection.

Default: "60 seconds"
targetAccountName string

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
targetDocumentLambda object

Configuration for AWS Lambda functions that implement custom AWS Config rules for compliance monitoring.

5 nested properties
handler string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
rolePolicyFile string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
runtime string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
sourceFilePath string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
timeout number

Maximum execution time for the Lambda function in seconds.

targetVersion string

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
ICustomRuleConfigType object

Configuration for custom AWS Config rules that use Lambda functions to evaluate resource compliance.

lambda object required

Configuration for AWS Lambda functions that implement custom AWS Config rules for compliance monitoring.

5 nested properties
handler string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
rolePolicyFile string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
runtime string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
sourceFilePath string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
timeout number

Maximum execution time for the Lambda function in seconds.

maximumExecutionFrequency string required

The frequency at which periodic evaluations are performed.

Default: "MaximumExecutionFrequency.TWENTY_FOUR_HOURS"
triggeringResources object required

Configuration for defining which AWS resources trigger evaluations for custom AWS Config rules.

3 nested properties
lookupKey string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
lookupType string required

The method used to identify which resources should trigger Config rule evaluations. This determines how the Config rule will find and evaluate AWS resources for compliance.

lookupValue NonEmptyString[] required

Array of values used to match resources based on the lookup type and key.

configurationChanges boolean

Controls whether the rule runs when AWS resource configurations change. When enabled, the rule will immediately evaluate affected resources whenever their configuration is modified.

Default: false
periodic boolean

Controls whether the rule runs on a scheduled basis at regular intervals. When enabled, the rule will evaluate resources according to the specified frequency.

Default: true
ICustomRuleLambdaType object

Configuration for AWS Lambda functions that implement custom AWS Config rules for compliance monitoring.

handler string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
rolePolicyFile string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
runtime string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
sourceFilePath string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
timeout number

Maximum execution time for the Lambda function in seconds.

IDeploymentTargets object

Deployment Targets Interface

Defines where AWS resources should be deployed within your AWS organization. This interface provides flexible targeting options for resource deployment across accounts, organizational units, and regions.

Key Features

  • Account-level targeting: Deploy to specific AWS accounts
  • OU-level targeting: Deploy to all accounts within organizational units
  • Regional exclusions: Skip specific AWS regions for compliance or cost optimization
  • Account exclusions: Exclude specific accounts from broader deployments

Example

yaml deploymentTargets: organizationalUnits: - Production - Development excludedAccounts: - Management excludedRegions: - us-west-1

accounts string[]

Target Accounts (Optional)

List of specific account names where resources should be deployed. Use for precise account-level targeting.

excludedAccounts string[]

Excluded Accounts (Optional)

List of account names to exclude from deployment. Takes precedence over organizational unit and account inclusions.

excludedRegions string[]

Excluded Regions (Optional)

List of AWS regions to exclude from deployment. Useful for compliance requirements or cost optimization.

organizationalUnits string[]

Organizational Units (Optional)

List of organizational unit names where resources should be deployed. When specified, resources will be created in all accounts within these OUs.

IDetectiveConfig object

Configuration for Amazon Detective, a security service that helps you analyze, investigate, and quickly identify the root cause of security findings. Use this configuration to enable Amazon Detective for an AWS Organization.

enable boolean required

Controls whether Amazon Detective is enabled across your organization.

excludeRegions string[]

List of AWS regions where Detective should not be enabled.

IDocumentConfig object

Configuration for defining AWS Systems Manager documents (SSM documents) that can be used to automate tasks on managed instances. SSM documents contain the steps and parameters needed to perform specific administrative tasks or configurations.

name string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
template string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
targetType string

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
IDocumentSetConfig object

Configuration for sharing AWS Systems Manager documents across organizational units within your AWS Organization.

documents IDocumentConfig[] required

Array of SSM documents to be shared with the specified organizational units.

shareTargets object required

Resource Access Manager (RAM) Share Targets Interface

Interface for AWS Resource Access Manager (RAM) share targets, which defines where shared resources should be made available within your AWS organization. RAM enables secure sharing of resources between AWS accounts and organizational units without duplicating resources or compromising security.

Key Features

  • Cross-Account Sharing: Share resources across multiple AWS accounts
  • OU-Level Sharing: Share with entire organizational units at once
  • Centralized Management: Manage shared resources from a central account
  • Cost Optimization: Avoid resource duplication across accounts
  • Security: Maintain resource ownership while enabling controlled access

Example

yaml shareTargets: organizationalUnits: - Root

Learn more about AWS Resource Access Manager.

2 nested properties
accounts string[]

Target Accounts (Optional)

List of specific account names that should receive access to the shared resource. Use this for precise, account-level control over resource sharing.

organizationalUnits string[]

Organizational Units (Optional)

List of organizational unit names that should receive access to the shared resource. When specified, all accounts within these OUs will be able to consume the shared resource.

IEbsDefaultVolumeEncryptionConfig object

Configuration for enabling automatic encryption of all new EBS volumes and snapshots in your AWS environment..

enable boolean required

Controls whether EBS default volume encryption is enabled. When enabled, all new EBS volumes created in the specified accounts and regions will be encrypted by default.

deploymentTargets object

Deployment Targets Interface

Defines where AWS resources should be deployed within your AWS organization. This interface provides flexible targeting options for resource deployment across accounts, organizational units, and regions.

Key Features

  • Account-level targeting: Deploy to specific AWS accounts
  • OU-level targeting: Deploy to all accounts within organizational units
  • Regional exclusions: Skip specific AWS regions for compliance or cost optimization
  • Account exclusions: Exclude specific accounts from broader deployments

Example

yaml deploymentTargets: organizationalUnits: - Production - Development excludedAccounts: - Management excludedRegions: - us-west-1

4 nested properties
accounts string[]

Target Accounts (Optional)

List of specific account names where resources should be deployed. Use for precise account-level targeting.

excludedAccounts string[]

Excluded Accounts (Optional)

List of account names to exclude from deployment. Takes precedence over organizational unit and account inclusions.

excludedRegions string[]

Excluded Regions (Optional)

List of AWS regions to exclude from deployment. Useful for compliance requirements or cost optimization.

organizationalUnits string[]

Organizational Units (Optional)

List of organizational unit names where resources should be deployed. When specified, resources will be created in all accounts within these OUs.

excludeRegions string[]

List of AWS regions where EBS default volume encryption should not be enabled.

kmsKey string

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
IEncryptionConfig object

Configuration for encrypting CloudWatch log groups using AWS Key Management Service (KMS).

kmsKeyArn string

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
kmsKeyName string

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
useLzaManagedKey boolean

Uses the default CloudWatch Logs KMS key that is automatically deployed by Landing Zone Accelerator.

IGuardDutyConfig object

Configuration for Amazon GuardDuty, a threat detection service that monitors your AWS environment for malicious activity. Use this configuration to enable Amazon GuardDuty for an AWS Organization and configure which AWS services should be monitored for security threats.

enable boolean required

Controls whether GuardDuty is enabled across your organization to monitor for security threats.

exportConfiguration object required

Configuration for exporting GuardDuty security findings to an Amazon S3 bucket for long-term storage and analysis.

5 nested properties
destinationType string required

The type of resource for the publishing destination. Currently only Amazon S3 buckets are supported.

Constant: "S3"
enable boolean required

Controls whether GuardDuty findings are automatically exported to an S3 bucket.

exportFrequency string required

An enum value that specifies how frequently findings are exported to the S3 bucket. Possible values FIFTEEN_MINUTES, ONE_HOUR, or SIX_HOURS

Values: "FIFTEEN_MINUTES" "ONE_HOUR" "SIX_HOURS"
overrideExisting boolean

Controls whether existing export configurations can be overwritten with new settings.

overrideGuardDutyPrefix object

Centralized Logging Prefix Configuration Interface

Configuration interface for customizing the S3 prefix structure used in centralized logging buckets. Allows organizations to override the default LZA logging path structure to meet specific organizational or compliance requirements.

Key Features

  • Custom Prefixes: Override default LZA logging path structure
  • Organizational Alignment: Align with existing logging conventions
  • Compliance: Meet specific regulatory path requirements
  • Flexibility: Maintain consistency across different log types

Example

yaml prefixConfig: useCustomPrefix: true customOverride: compliance/audit-logs

2 nested properties
useCustomPrefix boolean required

Use Custom Prefix (Required)

Indicates whether or not to add a custom prefix to LZA Default Centralized Logging location. If useCustomPrefix is set to true, logs will be stored in the Centralized Logging Bucket prefix.

Default: false
customOverride string

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
s3Protection object required

Configuration for enabling S3 protection with Amazon GuardDuty to detect suspicious and malicious activity in your S3 buckets. Use this configuration to enable S3 Protection with Amazon GuardDuty to monitor object-level API operations for potential security risks for data within Amazon S3 buckets.

2 nested properties
enable boolean required

Controls whether GuardDuty S3 protection is enabled to monitor your S3 buckets for suspicious activity.

excludeRegions string[]

List of AWS regions where Amazon GuardDuty S3 protection should not be enabled.

autoEnableOrgMembers boolean

Controls whether GuardDuty is automatically enabled for new accounts joining the organization.

Default: true
deploymentTargets object

Deployment Targets Interface

Defines where AWS resources should be deployed within your AWS organization. This interface provides flexible targeting options for resource deployment across accounts, organizational units, and regions.

Key Features

  • Account-level targeting: Deploy to specific AWS accounts
  • OU-level targeting: Deploy to all accounts within organizational units
  • Regional exclusions: Skip specific AWS regions for compliance or cost optimization
  • Account exclusions: Exclude specific accounts from broader deployments

Example

yaml deploymentTargets: organizationalUnits: - Production - Development excludedAccounts: - Management excludedRegions: - us-west-1

4 nested properties
accounts string[]

Target Accounts (Optional)

List of specific account names where resources should be deployed. Use for precise account-level targeting.

excludedAccounts string[]

Excluded Accounts (Optional)

List of account names to exclude from deployment. Takes precedence over organizational unit and account inclusions.

excludedRegions string[]

Excluded Regions (Optional)

List of AWS regions to exclude from deployment. Useful for compliance requirements or cost optimization.

organizationalUnits string[]

Organizational Units (Optional)

List of organizational unit names where resources should be deployed. When specified, resources will be created in all accounts within these OUs.

ec2Protection object

Configuration for GuardDuty for EC2 malware protection that scans EC2 instances and EBS volumes for malicious software. EC2 Malware Protection helps you detect malware and other security threats on your EC2 instances.

3 nested properties
enable boolean required

Controls whether GuardDuty EC2 Malware Protection is enabled to scan your EC2 instances for malware.

keepSnapshots boolean required

Controls whether EBS snapshots created during malware scanning are retained. When enables, snapshots are preserved.

excludeRegions string[]

List of AWS regions where GuardDuty EC2 Malware Protection should not be enabled.

eksProtection object

Configuration for GuardDuty EKS (Elastic Kubernetes Service) protection that monitors Amazon Elastic Kubernetes Service clusters for security threats. EKS Protection helps you detect potential security risks in Amazon EKS clusters.

3 nested properties
enable boolean required

Controls whether GuardDuty EKS Protection is enabled to monitor your EKS clusters for security threats.

excludeRegions string[]

List of AWS regions where GuardDuty EKS protection should not be enabled.

manageAgent boolean

Controls whether the GuardDuty EKS Agent is managed.

excludeRegions string[]

List of AWS regions where GuardDuty should not be enabled.

lambdaProtection object

AWS GuardDuty Lambda Malware Protection configuration.

2 nested properties
enable boolean required

Controls whether GuardDuty Lambda Protection is enabled to monitor your Lambda functions for security threats.

excludeRegions string[]

List of AWS regions where GuardDuty Lambda Protection should not be enabled.

lifecycleRules ILifecycleRule[]

S3 lifecycle rules that automatically manage the retention and deletion of GuardDuty findings stored in S3.

rdsProtection object

Configuration for GuardDuty RDS (Relational Database Service) protection that monitors Amazon RDS instances for security threats. RDS Protection helps you detect potential security risks in your RDS databases.

2 nested properties
enable boolean required

Controls whether GuardDuty RDS Protection is enabled to monitor your RDS databases for security threats..

excludeRegions string[]

List of AWS regions where GuardDuty RDS Protection should not be enabled.

s3MalwareProtection object

Use this configuration to define an Amazon GuardDuty S3 Malware Protection Plan to an Amazon S3 bucket.

2 nested properties
enable boolean required

Indicates whether AWS GuardDuty S3 Malware Protection is enabled.

s3Configurations IMalwareProtectionConfig[]

(OPTIONAL) The S3 Malware Protection Configuration. Provide this configuration when enabling this feature.

IGuardDutyEc2ProtectionConfig object

Configuration for GuardDuty for EC2 malware protection that scans EC2 instances and EBS volumes for malicious software. EC2 Malware Protection helps you detect malware and other security threats on your EC2 instances.

enable boolean required

Controls whether GuardDuty EC2 Malware Protection is enabled to scan your EC2 instances for malware.

keepSnapshots boolean required

Controls whether EBS snapshots created during malware scanning are retained. When enables, snapshots are preserved.

excludeRegions string[]

List of AWS regions where GuardDuty EC2 Malware Protection should not be enabled.

IGuardDutyEksProtectionConfig object

Configuration for GuardDuty EKS (Elastic Kubernetes Service) protection that monitors Amazon Elastic Kubernetes Service clusters for security threats. EKS Protection helps you detect potential security risks in Amazon EKS clusters.

enable boolean required

Controls whether GuardDuty EKS Protection is enabled to monitor your EKS clusters for security threats.

excludeRegions string[]

List of AWS regions where GuardDuty EKS protection should not be enabled.

manageAgent boolean

Controls whether the GuardDuty EKS Agent is managed.

IGuardDutyExportFindingsConfig object

Configuration for exporting GuardDuty security findings to an Amazon S3 bucket for long-term storage and analysis.

destinationType string required

The type of resource for the publishing destination. Currently only Amazon S3 buckets are supported.

Constant: "S3"
enable boolean required

Controls whether GuardDuty findings are automatically exported to an S3 bucket.

exportFrequency string required

An enum value that specifies how frequently findings are exported to the S3 bucket. Possible values FIFTEEN_MINUTES, ONE_HOUR, or SIX_HOURS

Values: "FIFTEEN_MINUTES" "ONE_HOUR" "SIX_HOURS"
overrideExisting boolean

Controls whether existing export configurations can be overwritten with new settings.

overrideGuardDutyPrefix object

Centralized Logging Prefix Configuration Interface

Configuration interface for customizing the S3 prefix structure used in centralized logging buckets. Allows organizations to override the default LZA logging path structure to meet specific organizational or compliance requirements.

Key Features

  • Custom Prefixes: Override default LZA logging path structure
  • Organizational Alignment: Align with existing logging conventions
  • Compliance: Meet specific regulatory path requirements
  • Flexibility: Maintain consistency across different log types

Example

yaml prefixConfig: useCustomPrefix: true customOverride: compliance/audit-logs

2 nested properties
useCustomPrefix boolean required

Use Custom Prefix (Required)

Indicates whether or not to add a custom prefix to LZA Default Centralized Logging location. If useCustomPrefix is set to true, logs will be stored in the Centralized Logging Bucket prefix.

Default: false
customOverride string

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
IGuardDutyLambdaProtectionConfig object

AWS GuardDuty Lambda Malware Protection configuration.

enable boolean required

Controls whether GuardDuty Lambda Protection is enabled to monitor your Lambda functions for security threats.

excludeRegions string[]

List of AWS regions where GuardDuty Lambda Protection should not be enabled.

IGuardDutyRdsProtectionConfig object

Configuration for GuardDuty RDS (Relational Database Service) protection that monitors Amazon RDS instances for security threats. RDS Protection helps you detect potential security risks in your RDS databases.

enable boolean required

Controls whether GuardDuty RDS Protection is enabled to monitor your RDS databases for security threats..

excludeRegions string[]

List of AWS regions where GuardDuty RDS Protection should not be enabled.

IGuardDutyS3MalwareProtectionConfig object

Use this configuration to define an Amazon GuardDuty S3 Malware Protection Plan to an Amazon S3 bucket.

enable boolean required

Indicates whether AWS GuardDuty S3 Malware Protection is enabled.

s3Configurations IMalwareProtectionConfig[]

(OPTIONAL) The S3 Malware Protection Configuration. Provide this configuration when enabling this feature.

IGuardDutyS3ProtectionConfig object

Configuration for enabling S3 protection with Amazon GuardDuty to detect suspicious and malicious activity in your S3 buckets. Use this configuration to enable S3 Protection with Amazon GuardDuty to monitor object-level API operations for potential security risks for data within Amazon S3 buckets.

enable boolean required

Controls whether GuardDuty S3 protection is enabled to monitor your S3 buckets for suspicious activity.

excludeRegions string[]

List of AWS regions where Amazon GuardDuty S3 protection should not be enabled.

IIamPasswordPolicyConfig object

Configuration for AWS Identity and Access Management (IAM) password policy that enforces password complexity and security requirements for IAM users across your organization.

allowUsersToChangePassword boolean required

Controls whether IAM users can change their own passwords through the AWS Management Console. When enabled, users can update their passwords without administrator intervention.

Default: true
hardExpiry boolean required

Controls whether IAM users can set a new password after their current password expires. When enabled, users with expired passwords cannot access the console until an administrator resets their password.

Default: true
maxPasswordAge number required

The maximum number of days a password remains valid before requiring a change.

Default: 90
minimumPasswordLength number required

The minimum number of characters required for IAM user passwords.

Default: 14
passwordReusePrevention number required

The number of previous passwords that users cannot reuse.

Default: 24
requireLowercaseCharacters boolean required

Requires passwords to contain at least one lowercase letter from the ISO basic Latin alphabet (a to z).

Default: true
requireNumbers boolean required

Requires passwords to contain at least one numeric character (0-9).

Default: true
requireSymbols boolean required

Requires passwords to contain at least one special character. Allowed symbols: ! @ # $ % ^ & * ( ) _ + - = [ ] { } | '

Default: true
requireUppercaseCharacters boolean required

Requires passwords to contain at least one uppercase letter from the ISO basic Latin alphabet (A to Z).

Default: true
IKeyConfig object

Configuration for creating and managing customer-managed keys (CMKs. These keys provide enhanced security control compared to AWS-managed keys, allowing you to define custom access policies, enable automatic key rotation, and maintain compliance with data protection regulations. Customer-managed keys are essential for organizations that need granular control over encryption operations and key lifecycle management.

deploymentTargets object required

Deployment Targets Interface

Defines where AWS resources should be deployed within your AWS organization. This interface provides flexible targeting options for resource deployment across accounts, organizational units, and regions.

Key Features

  • Account-level targeting: Deploy to specific AWS accounts
  • OU-level targeting: Deploy to all accounts within organizational units
  • Regional exclusions: Skip specific AWS regions for compliance or cost optimization
  • Account exclusions: Exclude specific accounts from broader deployments

Example

yaml deploymentTargets: organizationalUnits: - Production - Development excludedAccounts: - Management excludedRegions: - us-west-1

4 nested properties
accounts string[]

Target Accounts (Optional)

List of specific account names where resources should be deployed. Use for precise account-level targeting.

excludedAccounts string[]

Excluded Accounts (Optional)

List of account names to exclude from deployment. Takes precedence over organizational unit and account inclusions.

excludedRegions string[]

Excluded Regions (Optional)

List of AWS regions to exclude from deployment. Useful for compliance requirements or cost optimization.

organizationalUnits string[]

Organizational Units (Optional)

List of organizational unit names where resources should be deployed. When specified, resources will be created in all accounts within these OUs.

name string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
alias string

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
description string

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
enableKeyRotation boolean

Controls whether AWS Key Management Service (KMS) automatially rotates the encryption key material.

Default: true
enabled boolean

Controls whether the encryption key is available to be used. Disabled keys cannot encrypt or decrypt data.

Default: "true (key is enabled)"
policy string

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
removalPolicy string

Determines what happens to the encryption key when it's removed from the Stack. 'retain' preserves the key for data recovery, 'destroy' permanently deletes it, 'snapshot' creates a backup.

Default: "retain"
Values: "destroy" "retain" "snapshot"
IKeyManagementServiceConfig object

Configuration for AWS Key Management Service (KMS) that enables centralized management of encryption keys across your organization. This allows you to create, manage, and control customer-managed KMS keys for encrypting data at rest and in transit, helping meet compliance requirements and security best practices.

keySets IKeyConfig[] required

Array of KMS key configurations to be created and managed across your organization.

ILifecycleRule object

S3 Bucket Lifecycle Rule Configuration

Defines lifecycle management rules for S3 buckets to automatically transition objects between storage classes and manage object expiration. Lifecycle rules help optimize storage costs and manage data retention policies.

Key Features

  • Cost Optimization: Automatically transition objects to cheaper storage classes
  • Data Management: Set expiration policies for automatic cleanup
  • Version Control: Manage current and non-current object versions separately
  • Prefix Filtering: Apply rules to specific object prefixes or entire buckets

Usage Example


  - enabled: true     id: ArchiveLifecycle     expiredObjectDeleteMarker: true     noncurrentVersionExpiration: 90     transitions:       - storageClass: DEEP_ARCHIVE         transitionAfter: 180 ```
abortIncompleteMultipartUpload number

Abort Incomplete Multipart Uploads (Optional)

Number of days after which incomplete multipart uploads are automatically aborted and cleaned up. This helps prevent storage costs from abandoned multipart uploads.

Benefits

  • Cost Control: Prevents charges for incomplete upload parts
  • Storage Cleanup: Automatically removes orphaned multipart data
  • Operational Hygiene: Maintains clean bucket state

Considerations

  • Set based on your typical upload patterns and file sizes
  • Consider network reliability and upload duration requirements
  • Balance between cost control and operational flexibility
enabled boolean

Rule Enabled (Optional)

Controls whether this lifecycle rule is active and enforced. Allows you to temporarily disable rules without removing them from the configuration.

Default: true
expiration number

Object Expiration (Optional)

Number of days after object creation when objects are permanently deleted from the bucket. This implements automatic data retention policies and helps manage storage costs for time-sensitive data.

Use Cases

  • Log Retention: Automatically delete old log files
  • Compliance: Enforce data retention policies
  • Cost Management: Remove data that's no longer needed
  • Regulatory Requirements: Meet data disposal requirements

Important Considerations

  • Irreversible: Expired objects are permanently deleted
  • Compliance: Ensure retention periods meet regulatory requirements
  • Business Needs: Consider future data access requirements
  • Backup Strategy: Ensure critical data is backed up before expiration
expiredObjectDeleteMarker boolean

Expired Object Delete Marker Cleanup (Optional)

Controls whether S3 automatically removes delete markers that have no non-current versions. This helps clean up versioned buckets and reduce storage costs from orphaned delete markers.

Benefits When Enabled

  • Cost Reduction: Eliminates charges for orphaned delete markers
  • Storage Optimization: Keeps bucket metadata clean
  • Operational Efficiency: Reduces clutter in versioned buckets
Default: false
id string

Rule Identifier (Optional)

Unique, human-readable name for the lifecycle rule within the bucket. Used for rule identification, management, and troubleshooting.

noncurrentVersionExpiration number

Non-Current Version Expiration (Optional)

Number of days after an object version becomes non-current when it should be permanently deleted. This manages storage costs for versioned buckets by cleaning up old object versions.

Considerations

  • Recovery Needs: Balance cost vs. ability to recover old versions
  • Compliance: Some regulations require version retention
  • Storage Costs: Non-current versions incur full storage charges
  • Access Patterns: Consider how often old versions are accessed
noncurrentVersionTransitions ITransition[]

Non-Current Version Transitions (Optional)

Array of transition rules that specify when non-current object versions should move to different storage classes. This optimizes costs for versioned buckets by moving old versions to cheaper storage.

Storage Class Optimization

Non-current versions are typically accessed less frequently than current versions, making them ideal candidates for cheaper storage classes.

prefix string

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
transitions ITransition[]

Current Version Transitions (Optional)

Array of transition rules that specify when current objects should move to different storage classes. This implements cost optimization strategies based on data access patterns and age.

Cost Optimization Strategy

Design transitions based on your data access patterns:

  • Frequently Accessed: Keep in Standard storage
  • Infrequently Accessed: Transition to Standard-IA
  • Archive Data: Move to Glacier or Deep Archive
  • Long-term Retention: Use Deep Archive for lowest cost
ILogGroupsConfig object

Configuration for deploying and managing CloudWatch log groups across your organization. You can deploy new log groups or import existing ones into your accelerator configuration for centralized management.

deploymentTargets object required

Deployment Targets Interface

Defines where AWS resources should be deployed within your AWS organization. This interface provides flexible targeting options for resource deployment across accounts, organizational units, and regions.

Key Features

  • Account-level targeting: Deploy to specific AWS accounts
  • OU-level targeting: Deploy to all accounts within organizational units
  • Regional exclusions: Skip specific AWS regions for compliance or cost optimization
  • Account exclusions: Exclude specific accounts from broader deployments

Example

yaml deploymentTargets: organizationalUnits: - Production - Development excludedAccounts: - Management excludedRegions: - us-west-1

4 nested properties
accounts string[]

Target Accounts (Optional)

List of specific account names where resources should be deployed. Use for precise account-level targeting.

excludedAccounts string[]

Excluded Accounts (Optional)

List of account names to exclude from deployment. Takes precedence over organizational unit and account inclusions.

excludedRegions string[]

Excluded Regions (Optional)

List of AWS regions to exclude from deployment. Useful for compliance requirements or cost optimization.

organizationalUnits string[]

Organizational Units (Optional)

List of organizational unit names where resources should be deployed. When specified, resources will be created in all accounts within these OUs.

logGroupName string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
logRetentionInDays number required

The number of days to retain log events in the log group.

Default: "undefined"
encryption object

Configuration for encrypting CloudWatch log groups using AWS Key Management Service (KMS).

3 nested properties
kmsKeyArn string

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
kmsKeyName string

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
useLzaManagedKey boolean

Uses the default CloudWatch Logs KMS key that is automatically deployed by Landing Zone Accelerator.

terminationProtected boolean

Controls whether the log group should be protected from accidental deletion.

Default: true
IMacieConfig object

Configuration for Amazon Macie, a data security service that discovers, classifies, and protects sensitive data. Use this configuration to enable Amazon Macie within your AWS Organization along with it's reporting configuration.

enable boolean required

Controls whether AWS Macie is enabled across your organization

publishSensitiveDataFindings boolean required

Specifies whether to publish sensitive data findings to Security Hub. If you set this value to true, Amazon Macie automatically publishes all sensitive data findings that weren't suppressed by a findings filter. Default value is false.

excludeRegions string[]

List of AWS Region names to be excluded from configuring Amazon Macie.

lifecycleRules ILifecycleRule[]

Declaration of S3 Lifecycle rules that automatically manage the retention and deletion for Macie findings reports stored in S3.

policyFindingsPublishingFrequency string

Specifies how frequently findings are published to Security Hub. Possible values: FIFTEEN_MINUTES, ONE_HOUR, or SIX_HOURS

Values: "FIFTEEN_MINUTES" "ONE_HOUR" "SIX_HOURS"
publishPolicyFindings boolean

Specifies whether to publish findings to Security Hub and EventBridge

IMalwareProtectionConfig object

AWS GuardDuty S3 Malware Protection configuration.

account string required

Account that S3 bucket resides in

region string required

Region that S3 bucket resides in

s3BucketName string required

Name of the S3 bucket.

enableMalwareProtectionTags boolean

Information about whether the tags will be added to the S3 object after scanning.

objectPrefixes string[]

Information about the specified object prefixes. The S3 object will be scanned only if it belongs to any of the specified object prefixes.

tags ITag[]

(OPTIONAL) Tags added to the Malware Protection plan resource.

IMetricConfig object

Configuration for CloudWatch metric filters that extract metrics from log data for monitoring and alerting. Metric filters turn log data into numerical CloudWatch metrics that you can graph or set alarms on.

filterName string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
filterPattern string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
logGroupName string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
metricName string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
metricNamespace string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
metricValue string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
defaultValue number

Th value reported to the metric filter during a period when logs are ingested but no matching logs are found.

treatMissingData string

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
IMetricSetConfig object

Configuration for a set of CloudWatch metric filters that will be deployed together to specific regions and organizational units.

metrics IMetricConfig[] required

Array of CloudWatch metric filter configurations to deploy as part of this metric set.

deploymentTargets object

Deployment Targets Interface

Defines where AWS resources should be deployed within your AWS organization. This interface provides flexible targeting options for resource deployment across accounts, organizational units, and regions.

Key Features

  • Account-level targeting: Deploy to specific AWS accounts
  • OU-level targeting: Deploy to all accounts within organizational units
  • Regional exclusions: Skip specific AWS regions for compliance or cost optimization
  • Account exclusions: Exclude specific accounts from broader deployments

Example

yaml deploymentTargets: organizationalUnits: - Production - Development excludedAccounts: - Management excludedRegions: - us-west-1

4 nested properties
accounts string[]

Target Accounts (Optional)

List of specific account names where resources should be deployed. Use for precise account-level targeting.

excludedAccounts string[]

Excluded Accounts (Optional)

List of account names to exclude from deployment. Takes precedence over organizational unit and account inclusions.

excludedRegions string[]

Excluded Regions (Optional)

List of AWS regions to exclude from deployment. Useful for compliance requirements or cost optimization.

organizationalUnits string[]

Organizational Units (Optional)

List of organizational unit names where resources should be deployed. When specified, resources will be created in all accounts within these OUs.

regions string[]

AWS regions where the CloudWatch metric filters will be deployed.

INetworkPerimeterConfig object

Configuration for defining the network perimeter scope when using VPC lookup parameters in resource policies.

managedVpcOnly boolean

Controls which VPCs are included when using VPC lookup parameters in resource policy templates.

IPrefixConfig object

Centralized Logging Prefix Configuration Interface

Configuration interface for customizing the S3 prefix structure used in centralized logging buckets. Allows organizations to override the default LZA logging path structure to meet specific organizational or compliance requirements.

Key Features

  • Custom Prefixes: Override default LZA logging path structure
  • Organizational Alignment: Align with existing logging conventions
  • Compliance: Meet specific regulatory path requirements
  • Flexibility: Maintain consistency across different log types

Example

yaml prefixConfig: useCustomPrefix: true customOverride: compliance/audit-logs

useCustomPrefix boolean required

Use Custom Prefix (Required)

Indicates whether or not to add a custom prefix to LZA Default Centralized Logging location. If useCustomPrefix is set to true, logs will be stored in the Centralized Logging Bucket prefix.

Default: false
customOverride string

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
IRemediationParametersConfigType object

Configuration for input parameters passed to AWS Config rule remediation actions. These parameters provide the necessary data and context for remediation automation documents to execute corrective actions on non-compliant resources, enabling automated compliance restoration.

name string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
type string required

The data type of the parameter value, determining how the remediation document interprets the input.

Values: "String" "StringList"
value string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
IResourcePolicyConfig object

Configuration for defining resource-based policies that will be automatically applied to specific AWS resource types. This allows you to enforce consistent access controls and security policies across resources of the same type throughout your organization using AWS Config rules for automated compliance monitoring and remediation.

document string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
resourceType string required

The type of AWS resource that this policy will be applied to. This determines which AWS resources will be targeted for policy enforcement, such as S3 buckets, KMS keys, IAM roles, or other supported resource types.

Values: "S3_BUCKET" "KMS_KEY" "IAM_ROLE" "SECRETS_MANAGER_SECRET" "ECR_REPOSITORY" "OPENSEARCH_DOMAIN" "SNS_TOPIC" "SQS_QUEUE" "APIGATEWAY_REST_API" "LEX_BOT" "EFS_FILE_SYSTEM" "EVENTBRIDGE_EVENTBUS" "BACKUP_VAULT" "CODEARTIFACT_REPOSITORY" "CERTIFICATE_AUTHORITY" "LAMBDA_FUNCTION"
IResourcePolicyEnforcementConfig object

Configuration for automated resource policy enforcement across your AWS Organization using AWS Config rules.

enable boolean required

Controls whether resource policy enforcement is enabled across your organization. When enabled, AWS Config rules will be deployed to monitor and enforce resource-based policies according to the configured policy sets and remediation settings.

policySets IResourcePolicySetConfig[] required

Array of policy sets that define which resource policies to enforce and where to deploy them.

remediation object required

Configuration for automated remediation actions when AWS Config detects non-compliant resource policies. This enables automatic correction of policy violations to maintain consistent security controls across your organization without manual intervention, helping ensure continuous compliance.

3 nested properties
automatic boolean required

Controls whether remediation actions are triggered automatically when policy violations are detected. When enabled, AWS Config will automatically attempt to correct non-compliant resource policies.

maximumAutomaticAttempts number

Maximum number of times AWS Config will attempt to remediate a non-compliant resource. This prevents infinite retry loops while allowing for temporary failures to be resolved. After reaching this limit, manual intervention may be required.

Default: "5 attempts"
retryAttemptSeconds number

Maximum time in seconds that AWS Config waits before timing out a remediation attempt. This prevents remediation actions from running indefinitely and ensures timely completion.

Default: "60 seconds"
networkPerimeter object

Configuration for defining the network perimeter scope when using VPC lookup parameters in resource policies.

1 nested properties
managedVpcOnly boolean

Controls which VPCs are included when using VPC lookup parameters in resource policy templates.

IResourcePolicyRemediation object

Configuration for automated remediation actions when AWS Config detects non-compliant resource policies. This enables automatic correction of policy violations to maintain consistent security controls across your organization without manual intervention, helping ensure continuous compliance.

automatic boolean required

Controls whether remediation actions are triggered automatically when policy violations are detected. When enabled, AWS Config will automatically attempt to correct non-compliant resource policies.

maximumAutomaticAttempts number

Maximum number of times AWS Config will attempt to remediate a non-compliant resource. This prevents infinite retry loops while allowing for temporary failures to be resolved. After reaching this limit, manual intervention may be required.

Default: "5 attempts"
retryAttemptSeconds number

Maximum time in seconds that AWS Config waits before timing out a remediation attempt. This prevents remediation actions from running indefinitely and ensures timely completion.

Default: "60 seconds"
IResourcePolicySetConfig object

Configuration for a set of resource policies that will be deployed together to specific organizational units or accounts. This allows you to group related resource policies and deploy them as a cohesive security control package across your organization, ensuring consistent policy enforcement for different environments or business units.

deploymentTargets object required

Deployment Targets Interface

Defines where AWS resources should be deployed within your AWS organization. This interface provides flexible targeting options for resource deployment across accounts, organizational units, and regions.

Key Features

  • Account-level targeting: Deploy to specific AWS accounts
  • OU-level targeting: Deploy to all accounts within organizational units
  • Regional exclusions: Skip specific AWS regions for compliance or cost optimization
  • Account exclusions: Exclude specific accounts from broader deployments

Example

yaml deploymentTargets: organizationalUnits: - Production - Development excludedAccounts: - Management excludedRegions: - us-west-1

4 nested properties
accounts string[]

Target Accounts (Optional)

List of specific account names where resources should be deployed. Use for precise account-level targeting.

excludedAccounts string[]

Excluded Accounts (Optional)

List of account names to exclude from deployment. Takes precedence over organizational unit and account inclusions.

excludedRegions string[]

Excluded Regions (Optional)

List of AWS regions to exclude from deployment. Useful for compliance requirements or cost optimization.

organizationalUnits string[]

Organizational Units (Optional)

List of organizational unit names where resources should be deployed. When specified, resources will be created in all accounts within these OUs.

resourcePolicies IResourcePolicyConfig[] required

Array of resource policy configurations that define the specific policies to be enforced.

inputParameters Record<string, string>

Custom parameters that will be passed as environment variables to the AWS Config rule and remediation Lambda functions.

IS3PublicAccessBlockConfig object

Configuration for preventing accidental public exposure of S3 buckets and objects across your organization. When enabled, this setting applies organization-wide security guardrails that prevent users from accidentally making S3 buckets or objects publicly accessible.

enable boolean required

Indicates whether S3 public access blocking is enforced across all accounts in your organization.

excludeAccounts string[]

List of AWS account names that should be exempted from S3 public access blocking requirements.

IScpRevertChangesConfig object

Configuration for automatically detecting and reverting manual changes to Service Control Policies (SCPs). This securty control helps maintain governance by ensuring that security policies cannot be modified outside of your approved change management process. When enabled, any manual changes to SCPs will be automatically reverted and security teams will be notified of the attempted modification.

enable boolean required

Indicates whether manual changes to Service Control Policies are automatically detected and reverted.

snsTopicName string

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
ISecurityConfig object

Root configuration for the Landing Zone Accelerator security services and controls. This configuration enables comprehensive security governance across your AWS Organization through centralized security services, compliance monitoring, access controls, encryption management, and automated monitoring and alerting capabilities.

accessAnalyzer object required

Configuration for AWS Identity and Access Management (IAM) Access Analyzer that identifies resources with external access and helps implement least privilege by analyzing resource policies for security risks.

1 nested properties
enable boolean required

Controls whether AWS IAM Access Analyzer is enabled across your organization.

awsConfig object required

Configuration for AWS Config service that enables continuous monitoring and assessment of AWS resource configurations for compliance, security, and governance. This service records configuration changes, evaluates resources against compliance rules, and provides centralized visibility into your AWS environment's configuration state.

7 nested properties
enableConfigurationRecorder boolean required

Controls whether the AWS Config configuration recorder is enabled to track resource changes.

aggregation object

Configuration for AWS Config aggregation that centralizes compliance data from multiple accounts and regions into a single location for organization-wide visibility and reporting. This enables centralized compliance monitoring and simplifies governance oversight across your entire AWS Organization.

2 nested properties
enable boolean required

Controls whether AWS Config aggregation is enabled across your organization. When enabled, compliance data from all accounts and regions will be centralized for unified reporting and governance oversight.

delegatedAdminAccount string

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
deploymentTargets object

Deployment Targets Interface

Defines where AWS resources should be deployed within your AWS organization. This interface provides flexible targeting options for resource deployment across accounts, organizational units, and regions.

Key Features

  • Account-level targeting: Deploy to specific AWS accounts
  • OU-level targeting: Deploy to all accounts within organizational units
  • Regional exclusions: Skip specific AWS regions for compliance or cost optimization
  • Account exclusions: Exclude specific accounts from broader deployments

Example

yaml deploymentTargets: organizationalUnits: - Production - Development excludedAccounts: - Management excludedRegions: - us-west-1

4 nested properties
accounts string[]

Target Accounts (Optional)

List of specific account names where resources should be deployed. Use for precise account-level targeting.

excludedAccounts string[]

Excluded Accounts (Optional)

List of account names to exclude from deployment. Takes precedence over organizational unit and account inclusions.

excludedRegions string[]

Excluded Regions (Optional)

List of AWS regions to exclude from deployment. Useful for compliance requirements or cost optimization.

organizationalUnits string[]

Organizational Units (Optional)

List of organizational unit names where resources should be deployed. When specified, resources will be created in all accounts within these OUs.

enableDeliveryChannel boolean

Controls whether the delivery channel is enabled for sending configuration changes to S3.

overrideExisting boolean

Controls whether to override existing Config recorder settings in accounts that already have Config enabled.

Array of Config rule sets that define compliance checks to be deployed across your organization.

useServiceLinkedRole boolean

Controls whether to use AWS service-linked roles for Config instead of custom IAM roles created by LZA.

centralSecurityServices object required

Configuration for centralized security services that provides organization-wide security controls and monitoring capabilities. This configuration enables and manages core AWS security services including GuardDuty, Security Hub, Macie, Detective, and Audit Manager across your entire AWS Organization. It establishes a centralized security posture with consistent policies, automated threat detection, compliance monitoring, and unified security findings management to help organizations maintain strong security governance at scale.

12 nested properties
delegatedAdminAccount string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
ebsDefaultVolumeEncryption object required

Configuration for enabling automatic encryption of all new EBS volumes and snapshots in your AWS environment..

4 nested properties
enable boolean required

Controls whether EBS default volume encryption is enabled. When enabled, all new EBS volumes created in the specified accounts and regions will be encrypted by default.

deploymentTargets object

Deployment Targets Interface

Defines where AWS resources should be deployed within your AWS organization. This interface provides flexible targeting options for resource deployment across accounts, organizational units, and regions.

Key Features

  • Account-level targeting: Deploy to specific AWS accounts
  • OU-level targeting: Deploy to all accounts within organizational units
  • Regional exclusions: Skip specific AWS regions for compliance or cost optimization
  • Account exclusions: Exclude specific accounts from broader deployments

Example

yaml deploymentTargets: organizationalUnits: - Production - Development excludedAccounts: - Management excludedRegions: - us-west-1

excludeRegions string[]

List of AWS regions where EBS default volume encryption should not be enabled.

kmsKey string

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
guardduty object required

Configuration for Amazon GuardDuty, a threat detection service that monitors your AWS environment for malicious activity. Use this configuration to enable Amazon GuardDuty for an AWS Organization and configure which AWS services should be monitored for security threats.

12 nested properties
enable boolean required

Controls whether GuardDuty is enabled across your organization to monitor for security threats.

exportConfiguration object required

Configuration for exporting GuardDuty security findings to an Amazon S3 bucket for long-term storage and analysis.

s3Protection object required

Configuration for enabling S3 protection with Amazon GuardDuty to detect suspicious and malicious activity in your S3 buckets. Use this configuration to enable S3 Protection with Amazon GuardDuty to monitor object-level API operations for potential security risks for data within Amazon S3 buckets.

autoEnableOrgMembers boolean

Controls whether GuardDuty is automatically enabled for new accounts joining the organization.

Default: true
deploymentTargets object

Deployment Targets Interface

Defines where AWS resources should be deployed within your AWS organization. This interface provides flexible targeting options for resource deployment across accounts, organizational units, and regions.

Key Features

  • Account-level targeting: Deploy to specific AWS accounts
  • OU-level targeting: Deploy to all accounts within organizational units
  • Regional exclusions: Skip specific AWS regions for compliance or cost optimization
  • Account exclusions: Exclude specific accounts from broader deployments

Example

yaml deploymentTargets: organizationalUnits: - Production - Development excludedAccounts: - Management excludedRegions: - us-west-1

ec2Protection object

Configuration for GuardDuty for EC2 malware protection that scans EC2 instances and EBS volumes for malicious software. EC2 Malware Protection helps you detect malware and other security threats on your EC2 instances.

eksProtection object

Configuration for GuardDuty EKS (Elastic Kubernetes Service) protection that monitors Amazon Elastic Kubernetes Service clusters for security threats. EKS Protection helps you detect potential security risks in Amazon EKS clusters.

excludeRegions string[]

List of AWS regions where GuardDuty should not be enabled.

lambdaProtection object

AWS GuardDuty Lambda Malware Protection configuration.

lifecycleRules ILifecycleRule[]

S3 lifecycle rules that automatically manage the retention and deletion of GuardDuty findings stored in S3.

rdsProtection object

Configuration for GuardDuty RDS (Relational Database Service) protection that monitors Amazon RDS instances for security threats. RDS Protection helps you detect potential security risks in your RDS databases.

s3MalwareProtection object

Use this configuration to define an Amazon GuardDuty S3 Malware Protection Plan to an Amazon S3 bucket.

macie object required

Configuration for Amazon Macie, a data security service that discovers, classifies, and protects sensitive data. Use this configuration to enable Amazon Macie within your AWS Organization along with it's reporting configuration.

6 nested properties
enable boolean required

Controls whether AWS Macie is enabled across your organization

publishSensitiveDataFindings boolean required

Specifies whether to publish sensitive data findings to Security Hub. If you set this value to true, Amazon Macie automatically publishes all sensitive data findings that weren't suppressed by a findings filter. Default value is false.

excludeRegions string[]

List of AWS Region names to be excluded from configuring Amazon Macie.

lifecycleRules ILifecycleRule[]

Declaration of S3 Lifecycle rules that automatically manage the retention and deletion for Macie findings reports stored in S3.

policyFindingsPublishingFrequency string

Specifies how frequently findings are published to Security Hub. Possible values: FIFTEEN_MINUTES, ONE_HOUR, or SIX_HOURS

Values: "FIFTEEN_MINUTES" "ONE_HOUR" "SIX_HOURS"
publishPolicyFindings boolean

Specifies whether to publish findings to Security Hub and EventBridge

s3PublicAccessBlock object required

Configuration for preventing accidental public exposure of S3 buckets and objects across your organization. When enabled, this setting applies organization-wide security guardrails that prevent users from accidentally making S3 buckets or objects publicly accessible.

2 nested properties
enable boolean required

Indicates whether S3 public access blocking is enforced across all accounts in your organization.

excludeAccounts string[]

List of AWS account names that should be exempted from S3 public access blocking requirements.

securityHub object required

Configuration for Amazon Security Hub, a centralized security findings management service that aggregates security alerts from multiple AWS security services. Use this configuration to enable Amazon Security Hub for an AWS Organization along with it's auditing configuration.

Default: "logLevel HIGH"
10 nested properties
enable boolean required

Controls whether AWS Security Hub is enabled across your organization

standards ISecurityHubStandardConfig[] required

List of security and compliance standards that Security Hub will monitor across your organization.

autoEnableOrgMembers boolean

Controls whether Security Hub is automatically enabled for new accounts joining the organization.

Default: true

Configuration for Security Hub automation rules that automatically update findings based on specified criteria.

deploymentTargets object

Deployment Targets Interface

Defines where AWS resources should be deployed within your AWS organization. This interface provides flexible targeting options for resource deployment across accounts, organizational units, and regions.

Key Features

  • Account-level targeting: Deploy to specific AWS accounts
  • OU-level targeting: Deploy to all accounts within organizational units
  • Regional exclusions: Skip specific AWS regions for compliance or cost optimization
  • Account exclusions: Exclude specific accounts from broader deployments

Example

yaml deploymentTargets: organizationalUnits: - Production - Development excludedAccounts: - Management excludedRegions: - us-west-1

excludeRegions string[]

List of AWS regions where Security Hub should not be enabled.

logging object

Configuration for Security Hub logging destinations that determines where security findings are stored for analysis. This configuration allows you to centralize Security Hub findings in CloudWatch Logs for integration with your monitoring and alerting infrastructure.

notificationLevel string

Minimum severity level for findings that will trigger SNS notifications.

regionAggregation boolean

Controls whether Security Hub findings from all regions are aggregated in your organization's home region.

snsTopicName string

Name of the SNS topic that will receive Security Hub notifications.

ssmAutomation object required

Configuration for AWS Systems Manager (SSM) automation that enables centralized management and distribution of SSM documents across your AWS Organization.

2 nested properties
documentSets IDocumentSetConfig[] required

Array of document sets that define which SSM documents to create and share across organizational units.

excludeRegions string[]

List of AWS regions where SSM automation documents should not be deployed.

auditManager object

Configuration for AWS Audit Manager, a service that helps you continually audit your AWS usage to simplify how you manage risk and compliance with regulations and industry standards. Use this configuration to enable AWS Audit Manager for an AWS Organization. Audit Manager automates evidence collection so you can more easily assess whether your policies, procedures, and activities are operating effectively.

4 nested properties
defaultReportsConfiguration object required

Configuration for specifying where AWS Audit Manager stores compliance assessment reports Use this configuration to enable a destination for reports generated by AWS Audit Manager.

enable boolean required

Controls whether AWS Audit Manager is enabled across your organization.

excludeRegions string[]

List of AWS regions where Audit Manager should not be enabled.

lifecycleRules ILifecycleRule[]

S3 lifecycle rules that automatically manage the retention and deletion of Audit Manager reports and evidence stored in S3.

detective object

Configuration for Amazon Detective, a security service that helps you analyze, investigate, and quickly identify the root cause of security findings. Use this configuration to enable Amazon Detective for an AWS Organization.

2 nested properties
enable boolean required

Controls whether Amazon Detective is enabled across your organization.

excludeRegions string[]

List of AWS regions where Detective should not be enabled.

scpRevertChangesConfig object

Configuration for automatically detecting and reverting manual changes to Service Control Policies (SCPs). This securty control helps maintain governance by ensuring that security policies cannot be modified outside of your approved change management process. When enabled, any manual changes to SCPs will be automatically reverted and security teams will be notified of the attempted modification.

2 nested properties
enable boolean required

Indicates whether manual changes to Service Control Policies are automatically detected and reverted.

snsTopicName string

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
snsSubscriptions ISnsSubscriptionConfig[]

Configuration for SNS notification subscriptions for security alerts (DEPRECATED).

ssmSettings object

Configuration for AWS Systems Manager (SSM) security settings and controls across your organization. This enables centralized management of SSM security features to ensure secure and governed access to your managed resources while preventing unauthorized sharing of sensitive automation documents.

1 nested properties
blockPublicDocumentSharing object

This interface defines the SSM Block Public Document Sharing configuration for organization accounts. SSM Block Public Document Sharing prevents AWS Systems Manager documents from being shared publicly, providing an additional layer of security for organizations. The feature operates on a per-region basis and is applied across all enabled regions for comprehensive protection.

cloudWatch object required

Configuration for AWS CloudWatch monitoring and logging services across your organization.

3 nested properties
alarmSets IAlarmSetConfig[] required

Array of alarm sets that monitor metrics and trigger notifications when thresholds are breached.

metricSets IMetricSetConfig[] required

Array of metric filter sets that extract metrics from log data for monitoring and alerting.

logGroups ILogGroupsConfig[]

Array of CloudWatch log group configurations for centralized log management.

iamPasswordPolicy object required

Configuration for AWS Identity and Access Management (IAM) password policy that enforces password complexity and security requirements for IAM users across your organization.

9 nested properties
allowUsersToChangePassword boolean required

Controls whether IAM users can change their own passwords through the AWS Management Console. When enabled, users can update their passwords without administrator intervention.

Default: true
hardExpiry boolean required

Controls whether IAM users can set a new password after their current password expires. When enabled, users with expired passwords cannot access the console until an administrator resets their password.

Default: true
maxPasswordAge number required

The maximum number of days a password remains valid before requiring a change.

Default: 90
minimumPasswordLength number required

The minimum number of characters required for IAM user passwords.

Default: 14
passwordReusePrevention number required

The number of previous passwords that users cannot reuse.

Default: 24
requireLowercaseCharacters boolean required

Requires passwords to contain at least one lowercase letter from the ISO basic Latin alphabet (a to z).

Default: true
requireNumbers boolean required

Requires passwords to contain at least one numeric character (0-9).

Default: true
requireSymbols boolean required

Requires passwords to contain at least one special character. Allowed symbols: ! @ # $ % ^ & * ( ) _ + - = [ ] { } | '

Default: true
requireUppercaseCharacters boolean required

Requires passwords to contain at least one uppercase letter from the ISO basic Latin alphabet (A to Z).

Default: true
homeRegion string

The primary AWS region where the Landing Zone Accelerator is deployed and managed.

keyManagementService object

Configuration for AWS Key Management Service (KMS) that enables centralized management of encryption keys across your organization. This allows you to create, manage, and control customer-managed KMS keys for encrypting data at rest and in transit, helping meet compliance requirements and security best practices.

1 nested properties
keySets IKeyConfig[] required

Array of KMS key configurations to be created and managed across your organization.

resourcePolicyEnforcement object

Configuration for automated resource policy enforcement across your AWS Organization using AWS Config rules.

4 nested properties
enable boolean required

Controls whether resource policy enforcement is enabled across your organization. When enabled, AWS Config rules will be deployed to monitor and enforce resource-based policies according to the configured policy sets and remediation settings.

policySets IResourcePolicySetConfig[] required

Array of policy sets that define which resource policies to enforce and where to deploy them.

remediation object required

Configuration for automated remediation actions when AWS Config detects non-compliant resource policies. This enables automatic correction of policy violations to maintain consistent security controls across your organization without manual intervention, helping ensure continuous compliance.

3 nested properties
automatic boolean required

Controls whether remediation actions are triggered automatically when policy violations are detected. When enabled, AWS Config will automatically attempt to correct non-compliant resource policies.

maximumAutomaticAttempts number

Maximum number of times AWS Config will attempt to remediate a non-compliant resource. This prevents infinite retry loops while allowing for temporary failures to be resolved. After reaching this limit, manual intervention may be required.

Default: "5 attempts"
retryAttemptSeconds number

Maximum time in seconds that AWS Config waits before timing out a remediation attempt. This prevents remediation actions from running indefinitely and ensures timely completion.

Default: "60 seconds"
networkPerimeter object

Configuration for defining the network perimeter scope when using VPC lookup parameters in resource policies.

1 nested properties
managedVpcOnly boolean

Controls which VPCs are included when using VPC lookup parameters in resource policy templates.

ISecurityHubAutomationRuleAction object

Configuration for defining the specific actions that Security Hub automation rules will perform on findings that match the rule criteria. Actions determine what modifications will be made to findings, such as updating severity, suppressing findings, or adding notes.

type string required

The type of action to perform when findings match the automation rule criteria.

findingFieldsUpdate object

Configuration for updating specific fields within Security Hub findings through automation rules. Identifies the finding fields that the automation rule action updates when a finding matches the defined criteria.

9 nested properties
confidence number

The confidence score (0-100) indicating how certain the automation rule is about the finding's accuracy.

criticality number

The criticality score (0-100) representing the business impact if this finding represents a real security issue.

note object

Configuration for adding explanatory notes to Security Hub findings through automation rules. This allows automation rules to automatically document the reason for actions taken on findings, providing context and audit trails for security teams to understand automated decisions.

2 nested properties
text string required

The descriptive text content of the note that will be added to the finding. This should explain the reason for the automation action

updatedBy string required

The name or identifier of the entity responsible for adding this note.

Array of related findings to link to this finding for correlation and context.

severityLabel string

Severity label to assign to the finding

types string[]

Array of finding types to assign, categorizing the nature of the security issue.

userDefinedFields Record<string, string>

Custom key-value pairs to add to the finding for organization-specific metadata.

verificationState string

The verification state to assign to the finding, indicating the validation status of the security issue. Valid values: UNKNOWN, TRUE_POSITIVE, FALSE_POSITIVE, BENIGN_POSITIVE.

workflowStatus string

Workflow status to assign to the finding to update information about the investigation. This controls the finding's state in your security workflow (e.g., NEW, NOTIFIED, RESOLVED, SUPPRESSED).

ISecurityHubAutomationRuleConfig object

Configuration for defining Security Hub automation rules that automatically update findings based on specified criteria. Automation rules help streamline security operations by automatically suppressing, updating, or enriching findings.

Array of actions to perform on findings that match the rule criteria.

Array of criteria that findings must match to trigger the rule actions

description string required

A detailed description explaining what the automation rule does and when it applies.

enabled boolean required

Controls whether the automation rule is enabled and will proccess findings.

name string required

The unique name identifier for the automation rule.

excludeRegions string[]

List of AWS regions where this automation rule should not be applied.

isTerminal boolean

Indiciates whether this rule should be the last rule applied to a matching finding.

ruleOrder number

The execution order for this rule when multiple rules apply to the same finding. Rules with lower numbers execute first. Valid range: 1-1000.

ISecurityHubAutomationRuleCriteria object

Configuration for defining the filtering criteria that Security Hub findings must match to trigger automation rule actions. Each criteria specifies a finding field (key) and the filter conditions that determine whether a finding matches the rule. Supports any valid SecurityHub finding field as a key with appropriate filter arrays as values.

The filter conditions to apply to the specified finding field. The filter type (string, number, date, or key-value) must match the data type of the field being filtered.

key string required

The name of the Security Hub finding field to filter on.

ISecurityHubAutomationRuleFindingFieldsUpdate object

Configuration for updating specific fields within Security Hub findings through automation rules. Identifies the finding fields that the automation rule action updates when a finding matches the defined criteria.

confidence number

The confidence score (0-100) indicating how certain the automation rule is about the finding's accuracy.

criticality number

The criticality score (0-100) representing the business impact if this finding represents a real security issue.

note object

Configuration for adding explanatory notes to Security Hub findings through automation rules. This allows automation rules to automatically document the reason for actions taken on findings, providing context and audit trails for security teams to understand automated decisions.

2 nested properties
text string required

The descriptive text content of the note that will be added to the finding. This should explain the reason for the automation action

updatedBy string required

The name or identifier of the entity responsible for adding this note.

Array of related findings to link to this finding for correlation and context.

severityLabel string

Severity label to assign to the finding

types string[]

Array of finding types to assign, categorizing the nature of the security issue.

userDefinedFields Record<string, string>

Custom key-value pairs to add to the finding for organization-specific metadata.

verificationState string

The verification state to assign to the finding, indicating the validation status of the security issue. Valid values: UNKNOWN, TRUE_POSITIVE, FALSE_POSITIVE, BENIGN_POSITIVE.

workflowStatus string

Workflow status to assign to the finding to update information about the investigation. This controls the finding's state in your security workflow (e.g., NEW, NOTIFIED, RESOLVED, SUPPRESSED).

ISecurityHubAutomationRuleNote object

Configuration for adding explanatory notes to Security Hub findings through automation rules. This allows automation rules to automatically document the reason for actions taken on findings, providing context and audit trails for security teams to understand automated decisions.

text string required

The descriptive text content of the note that will be added to the finding. This should explain the reason for the automation action

updatedBy string required

The name or identifier of the entity responsible for adding this note.

ISecurityHubAutomationRuleRelatedFinding object

Configuration for linking related findings in Security Hub automation rules. This allows automation rules to establish relationships between findings.

id string required

The unique identifier of the related finding within the specified security tool.

productArn string required

The Amazon Resource Name (ARN) of the security tool that generated the related finding. This identifies the source service or tool that created the finding you want to link to.

ISecurityHubAutomationRulesDateFilter object

Configuration for date-based filtering criteria in Security Hub automation rules. This filter allows you to match findings based on date and time values in Security Hub finding fields.

dateRange object

Configuration for relative date range filtering based on a rolling time window. This provides a dynamic alternative to fixed start/end dates, automatically adjusting the filter criteria based on the current date and time.

2 nested properties
unit string required

The time unit for the date range calculation. Currently only "DAYS" is supported for relative date filtering.

Constant: "DAYS"
value number required

The number of time units to look back from the current date. For example, a value of 30 with unit "DAYS" would match findings from the last 30 days.

end string

The end date and time for the date range filter in ISO 8601 format. Findings with dates on or before this timestamp will match the filter. Use this to define the end boundary of a specific time period for filtering.

start string

The start date and time for the date range filter in ISO 8601 format. Findings with dates on or after this timestamp will match the filter. Use this to define the beginning of a specific time period for filtering.

ISecurityHubAutomationRulesKeyValueFilter object

Configuration for key-value pair filtering criteria in Security Hub automation rules. This filter allows you to match findings based on custom key-value pairs in Security Hub finding fields.

comparison string required

The comparison operator that defines how the filter value should be matched against the key's value. Different operators enable various matching strategies for key-value pair filtering.

  • EQUALS: Exact match of the value
  • NOT_EQUALS: Does not match the value exactly
  • CONTAINS: Value contains the specified text
  • NOT_CONTAINS: Value does not contain the specified text
Values: "EQUALS" "NOT_EQUALS" "CONTAINS" "NOT_CONTAINS"
key string required

The key name to filter on within key-value pair fields. This specifies which key within a structured field (like tags or user-defined fields) to examine.

value string required

The value to match against for the specified key. This is the target value that will be compared against the actual value associated with the key.

ISecurityHubAutomationRulesNumberFilter object

Configuration for numeric-based filtering criteria in Security Hub automation rules. This filter allows you to match findings based on numeric values in Security Hub finding fields.

eq number

Matches findings where the numeric field value exactly equals this number. Use this to filter for findings with specific numeric values.

gt number

Matches findings where the numeric field value is greater than this number. Use this for strict greater-than comparisons (excluding the boundary value).

gte number

Matches findings where the numeric field value is greater than or equal to this number. Use this to filter for findings above a certain threshold (e.g., high severity scores).

Greater than or equal to value

lt number

Matches findings where the numeric field value is less than this number. Use this for strict less-than comparisons (excluding the boundary value).

lte number

Matches findings where the numeric field value is less than or equal to this number. Use this to filter for findings below a certain threshold (e.g., low confidence scores).

Less than or equal to value

ISecurityHubAutomationRulesStringFilter object

Configuration for string-based filtering criteria in Security Hub automation rules. This filter allows you to match findings based on text values in Security Hub finding fields, enabling precise automation rules that target specific types of findings based on their string attributes.

comparison string required

The comparison operator that defines how the filter value should be matched against finding field values. Different operators enable various matching strategies from exact matches to partial text searches.

  • EQUALS: Exact match
  • PREFIX: Starts with the specified value
  • NOT_EQUALS: Does not match exactly
  • PREFIX_NOT_EQUALS: Does not start with the specified value
  • CONTAINS: Contains the specified value anywhere
  • NOT_CONTAINS: Does not contain the specified value
  • CONTAINS_WORD: Contains the specified value as a complete word
Values: "EQUALS" "PREFIX" "NOT_EQUALS" "PREFIX_NOT_EQUALS" "CONTAINS" "NOT_CONTAINS" "CONTAINS_WORD"
value string required

The string value to match against when filtering Security Hub findings.

ISecurityHubConfig object

Configuration for Amazon Security Hub, a centralized security findings management service that aggregates security alerts from multiple AWS security services. Use this configuration to enable Amazon Security Hub for an AWS Organization along with it's auditing configuration.

enable boolean required

Controls whether AWS Security Hub is enabled across your organization

standards ISecurityHubStandardConfig[] required

List of security and compliance standards that Security Hub will monitor across your organization.

autoEnableOrgMembers boolean

Controls whether Security Hub is automatically enabled for new accounts joining the organization.

Default: true

Configuration for Security Hub automation rules that automatically update findings based on specified criteria.

deploymentTargets object

Deployment Targets Interface

Defines where AWS resources should be deployed within your AWS organization. This interface provides flexible targeting options for resource deployment across accounts, organizational units, and regions.

Key Features

  • Account-level targeting: Deploy to specific AWS accounts
  • OU-level targeting: Deploy to all accounts within organizational units
  • Regional exclusions: Skip specific AWS regions for compliance or cost optimization
  • Account exclusions: Exclude specific accounts from broader deployments

Example

yaml deploymentTargets: organizationalUnits: - Production - Development excludedAccounts: - Management excludedRegions: - us-west-1

4 nested properties
accounts string[]

Target Accounts (Optional)

List of specific account names where resources should be deployed. Use for precise account-level targeting.

excludedAccounts string[]

Excluded Accounts (Optional)

List of account names to exclude from deployment. Takes precedence over organizational unit and account inclusions.

excludedRegions string[]

Excluded Regions (Optional)

List of AWS regions to exclude from deployment. Useful for compliance requirements or cost optimization.

organizationalUnits string[]

Organizational Units (Optional)

List of organizational unit names where resources should be deployed. When specified, resources will be created in all accounts within these OUs.

excludeRegions string[]

List of AWS regions where Security Hub should not be enabled.

logging object

Configuration for Security Hub logging destinations that determines where security findings are stored for analysis. This configuration allows you to centralize Security Hub findings in CloudWatch Logs for integration with your monitoring and alerting infrastructure.

1 nested properties
cloudWatch object

Configuration for forwarding Security Hub findings to CloudWatch for centralized monitoring and analysis.

Default: "logLevel HIGH"
3 nested properties
enable boolean required

Controls whether Security Hub findings are automatically forwarded to CloudWatch Logs. When enabled, findings are sent to CloudWatch for integration with monitoring dashboards and alerting systems.

logGroupName string

Name of the CloudWatch Log Group where Security Hub findings will be stored.

logLevel string

Security Hub Severity Level Type

Defines the severity levels used by AWS Security Hub for categorizing security findings and compliance issues.

Values (Highest to Lowest Severity)

  • CRITICAL: Immediate action required, severe security risk
  • HIGH: Urgent attention needed, significant security concern
  • MEDIUM: Important but not urgent, moderate security risk
  • LOW: Minor security concern, low priority
  • INFORMATIONAL: Informational findings, no immediate action needed
Values: "CRITICAL" "HIGH" "MEDIUM" "LOW" "INFORMATIONAL"
notificationLevel string

Minimum severity level for findings that will trigger SNS notifications.

regionAggregation boolean

Controls whether Security Hub findings from all regions are aggregated in your organization's home region.

snsTopicName string

Name of the SNS topic that will receive Security Hub notifications.

ISecurityHubLoggingCloudwatchConfig object

Configuration for forwarding Security Hub findings to CloudWatch for centralized monitoring and analysis.

enable boolean required

Controls whether Security Hub findings are automatically forwarded to CloudWatch Logs. When enabled, findings are sent to CloudWatch for integration with monitoring dashboards and alerting systems.

logGroupName string

Name of the CloudWatch Log Group where Security Hub findings will be stored.

logLevel string

Security Hub Severity Level Type

Defines the severity levels used by AWS Security Hub for categorizing security findings and compliance issues.

Values (Highest to Lowest Severity)

  • CRITICAL: Immediate action required, severe security risk
  • HIGH: Urgent attention needed, significant security concern
  • MEDIUM: Important but not urgent, moderate security risk
  • LOW: Minor security concern, low priority
  • INFORMATIONAL: Informational findings, no immediate action needed
Values: "CRITICAL" "HIGH" "MEDIUM" "LOW" "INFORMATIONAL"
ISecurityHubLoggingConfig object

Configuration for Security Hub logging destinations that determines where security findings are stored for analysis. This configuration allows you to centralize Security Hub findings in CloudWatch Logs for integration with your monitoring and alerting infrastructure.

cloudWatch object

Configuration for forwarding Security Hub findings to CloudWatch for centralized monitoring and analysis.

Default: "logLevel HIGH"
3 nested properties
enable boolean required

Controls whether Security Hub findings are automatically forwarded to CloudWatch Logs. When enabled, findings are sent to CloudWatch for integration with monitoring dashboards and alerting systems.

logGroupName string

Name of the CloudWatch Log Group where Security Hub findings will be stored.

logLevel string

Security Hub Severity Level Type

Defines the severity levels used by AWS Security Hub for categorizing security findings and compliance issues.

Values (Highest to Lowest Severity)

  • CRITICAL: Immediate action required, severe security risk
  • HIGH: Urgent attention needed, significant security concern
  • MEDIUM: Important but not urgent, moderate security risk
  • LOW: Minor security concern, low priority
  • INFORMATIONAL: Informational findings, no immediate action needed
Values: "CRITICAL" "HIGH" "MEDIUM" "LOW" "INFORMATIONAL"
ISecurityHubStandardConfig object

Configuration for enabling specific compliance and security standards within Amazon Security Hub. Use this configuration to define the security standard(s) that are enabled through Amazon Security Hub and which accounts and/or organization units that the controls are deployed to.

enable boolean required

Controls whether this Security Hub standard is enabled to monitor compliance across your specified deployment targets. When enabled, Security Hub continuously evaluates your resources against the standard's security controls.

name string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
controlsToDisable NonEmptyString[]

List of specific control names within the security standard that should be disabled.

deploymentTargets object

Deployment Targets Interface

Defines where AWS resources should be deployed within your AWS organization. This interface provides flexible targeting options for resource deployment across accounts, organizational units, and regions.

Key Features

  • Account-level targeting: Deploy to specific AWS accounts
  • OU-level targeting: Deploy to all accounts within organizational units
  • Regional exclusions: Skip specific AWS regions for compliance or cost optimization
  • Account exclusions: Exclude specific accounts from broader deployments

Example

yaml deploymentTargets: organizationalUnits: - Production - Development excludedAccounts: - Management excludedRegions: - us-west-1

4 nested properties
accounts string[]

Target Accounts (Optional)

List of specific account names where resources should be deployed. Use for precise account-level targeting.

excludedAccounts string[]

Excluded Accounts (Optional)

List of account names to exclude from deployment. Takes precedence over organizational unit and account inclusions.

excludedRegions string[]

Excluded Regions (Optional)

List of AWS regions to exclude from deployment. Useful for compliance requirements or cost optimization.

organizationalUnits string[]

Organizational Units (Optional)

List of organizational unit names where resources should be deployed. When specified, resources will be created in all accounts within these OUs.

IShareTargets object

Resource Access Manager (RAM) Share Targets Interface

Interface for AWS Resource Access Manager (RAM) share targets, which defines where shared resources should be made available within your AWS organization. RAM enables secure sharing of resources between AWS accounts and organizational units without duplicating resources or compromising security.

Key Features

  • Cross-Account Sharing: Share resources across multiple AWS accounts
  • OU-Level Sharing: Share with entire organizational units at once
  • Centralized Management: Manage shared resources from a central account
  • Cost Optimization: Avoid resource duplication across accounts
  • Security: Maintain resource ownership while enabling controlled access

Example

yaml shareTargets: organizationalUnits: - Root

Learn more about AWS Resource Access Manager.

accounts string[]

Target Accounts (Optional)

List of specific account names that should receive access to the shared resource. Use this for precise, account-level control over resource sharing.

organizationalUnits string[]

Organizational Units (Optional)

List of organizational unit names that should receive access to the shared resource. When specified, all accounts within these OUs will be able to consume the shared resource.

ISnsSubscriptionConfig object

This interface is deprecated and has been replaced by the snsTopics configuration in the global config. Organizations should migrate to the new SNS topic configuration.

Configuration for legacy SNS notification subscriptions that send security alerts to email addresses.

email string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
level string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
ISsmAutomationConfig object

Configuration for AWS Systems Manager (SSM) automation that enables centralized management and distribution of SSM documents across your AWS Organization.

documentSets IDocumentSetConfig[] required

Array of document sets that define which SSM documents to create and share across organizational units.

excludeRegions string[]

List of AWS regions where SSM automation documents should not be deployed.

ISsmSettingsConfig object

Configuration for AWS Systems Manager (SSM) security settings and controls across your organization. This enables centralized management of SSM security features to ensure secure and governed access to your managed resources while preventing unauthorized sharing of sensitive automation documents.

blockPublicDocumentSharing object

This interface defines the SSM Block Public Document Sharing configuration for organization accounts. SSM Block Public Document Sharing prevents AWS Systems Manager documents from being shared publicly, providing an additional layer of security for organizations. The feature operates on a per-region basis and is applied across all enabled regions for comprehensive protection.

2 nested properties
enable boolean required

Indicates whether SSM Block Public Document Sharing is enabled across the organization. When true, blocks public document sharing on all accounts except those in excludeAccounts. When false, allows public document sharing on all accounts. This setting is applied in all enabled regions for comprehensive security coverage.

excludeAccounts string[]

List of AWS Account names to be excluded from SSM Block Public Document Sharing configuration. Accounts in this list will have public document sharing allowed regardless of the enable setting. Account names must match those defined in the accounts configuration. Exclusions are applied across all enabled regions.

ITag object

AWS Resource Tag Configuration

Defines key-value pairs used for tagging AWS resources. Tags provide metadata for resource organization, cost allocation, access control, and automation.

Key Features

  • Resource Organization: Group and categorize resources logically
  • Cost Allocation: Track costs by project, department, or environment
  • Access Control: Use tags in IAM policies for conditional access
  • Automation: Trigger automated actions based on tag values
  • Compliance: Meet organizational and regulatory tagging requirements

Example

yaml tags: - key: Environment value: Production - key: Project value: WebApplication - key: Owner value: Platform-Team - key: CostCenter value: Engineering - key: Backup value: Daily

key string required

Tag Key (Required)

The tag key name that identifies the type of metadata being stored. Tag keys should follow consistent naming conventions across your organization.

value string required

Tag Value (Required)

The tag value that provides the actual metadata content for the tag key. Values should be meaningful and follow organizational standards.

ITransition object

S3 Storage Class Transition Configuration

Defines when and how objects should transition from their current storage class to a different storage class. Used in S3 lifecycle rules to optimize storage costs based on data access patterns and retention requirements.

Key Components

  • Storage Class: Target storage class for the transition
  • Transition Timing: Number of days after object creation or version change

Example

yaml transitions: - storageClass: STANDARD_IA transitionAfter: 30 - storageClass: GLACIER transitionAfter: 365 - storageClass: DEEP_ARCHIVE transitionAfter: 2555

storageClass string required

S3 Storage Class Type

Defines the available Amazon S3 storage classes for lifecycle transitions. Each storage class is optimized for different access patterns, durability requirements, and cost considerations.

Values: "DEEP_ARCHIVE" "GLACIER" "GLACIER_IR" "STANDARD_IA" "INTELLIGENT_TIERING" "ONEZONE_IA"
transitionAfter number required

Transition After (Days) (Required)

Number of days after object creation (for current versions) or after becoming non-current (for non-current versions) when the transition should occur.

ITriggeringResourceType object

Configuration for defining which AWS resources trigger evaluations for custom AWS Config rules.

lookupKey string required

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

minLength=1
lookupType string required

The method used to identify which resources should trigger Config rule evaluations. This determines how the Config rule will find and evaluate AWS resources for compliance.

lookupValue NonEmptyString[] required

Array of values used to match resources based on the lookup type and key.

NonEmptyString string

Non-Empty String Type

Represents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.

SecurityHubSeverityLevel string

Security Hub Severity Level Type

Defines the severity levels used by AWS Security Hub for categorizing security findings and compliance issues.

Values (Highest to Lowest Severity)

  • CRITICAL: Immediate action required, severe security risk
  • HIGH: Urgent attention needed, significant security concern
  • MEDIUM: Important but not urgent, moderate security risk
  • LOW: Minor security concern, low priority
  • INFORMATIONAL: Informational findings, no immediate action needed
StorageClass string

S3 Storage Class Type

Defines the available Amazon S3 storage classes for lifecycle transitions. Each storage class is optimized for different access patterns, durability requirements, and cost considerations.