For AI agents: A markdown version of this page is available at https://docs.datadoghq.com/security/code_security/iac_security/iac_rules/terraform-aws-rds-without-logging.md.
A documentation index is available at /llms.txt.
When an RDS instance does not have any logging enabled, critical database activities such as errors, slow queries, and general events are not captured or retained. This lack of visibility makes it difficult to detect anomalous behavior, troubleshoot incidents, or comply with auditing requirements. Enabling logging, for example, by setting enabled_cloudwatch_logs_exports = ["general", "error"] in Terraform, ensures that important logs are exported for monitoring and incident response purposes.
module"db"{source="terraform-aws-modules/rds/aws"version="~> 3.0"identifier="demodb"engine="mysql"engine_version="5.7.19"instance_class="db.t2.large"allocated_storage=5enabled_cloudwatch_logs_exports=["general","error"]name="demodb"username="user"password="YourPwdShouldBeLongAndSecure!"port="3306"iam_database_authentication_enabled=truevpc_security_group_ids=["sg-12345678"]maintenance_window="Mon:00:00-Mon:03:00"backup_window="03:00-06:00" # Enhanced Monitoring - see example for details on how to create the role
# by yourself, in case you don't want to create it automatically
monitoring_interval="30"monitoring_role_name="MyRDSMonitoringRole"create_monitoring_role=truetags={Owner="user"Environment="dev"} # DB subnet group
subnet_ids=["subnet-12345678","subnet-87654321"] # DB parameter group
family="mysql5.7" # DB option group
major_engine_version="5.7" # Database Deletion Protection
deletion_protection=trueparameters=[{name="character_set_client"value="utf8mb4"},{name="character_set_server"value="utf8mb4"}]options=[{option_name="MARIADB_AUDIT_PLUGIN"option_settings=[{name="SERVER_AUDIT_EVENTS"value="CONNECT"},{name="SERVER_AUDIT_FILE_ROTATIONS"value="37"},]},]}
module"db"{source="terraform-aws-modules/rds/aws"version="~> 3.0"identifier="demodb"engine="mysql"engine_version="5.7.19"instance_class="db.t2.large"allocated_storage=5enabled_cloudwatch_logs_exports=["upgrade"]name="demodb"username="user"password="YourPwdShouldBeLongAndSecure!"port="3306"iam_database_authentication_enabled=truevpc_security_group_ids=["sg-12345678"]maintenance_window="Mon:00:00-Mon:03:00"backup_window="03:00-06:00" # Enhanced Monitoring - see example for details on how to create the role
# by yourself, in case you don't want to create it automatically
monitoring_interval="30"monitoring_role_name="MyRDSMonitoringRole"create_monitoring_role=truetags={Owner="user"Environment="dev"} # DB subnet group
subnet_ids=["subnet-12345678","subnet-87654321"] # DB parameter group
family="mysql5.7" # DB option group
major_engine_version="5.7" # Database Deletion Protection
deletion_protection=trueparameters=[{name="character_set_client"value="utf8mb4"},{name="character_set_server"value="utf8mb4"}]options=[{option_name="MARIADB_AUDIT_PLUGIN"option_settings=[{name="SERVER_AUDIT_EVENTS"value="CONNECT"},{name="SERVER_AUDIT_FILE_ROTATIONS"value="37"},]},]}
module"db"{source="terraform-aws-modules/rds/aws"version="~> 3.0"identifier="demodb"engine="mysql"engine_version="5.7.19"instance_class="db.t2.large"allocated_storage=5name="demodb"username="user"password="YourPwdShouldBeLongAndSecure!"port="3306"iam_database_authentication_enabled=truevpc_security_group_ids=["sg-12345678"]maintenance_window="Mon:00:00-Mon:03:00"backup_window="03:00-06:00" # Enhanced Monitoring - see example for details on how to create the role
# by yourself, in case you don't want to create it automatically
monitoring_interval="30"monitoring_role_name="MyRDSMonitoringRole"create_monitoring_role=truetags={Owner="user"Environment="dev"} # DB subnet group
subnet_ids=["subnet-12345678","subnet-87654321"] # DB parameter group
family="mysql5.7" # DB option group
major_engine_version="5.7" # Database Deletion Protection
deletion_protection=trueparameters=[{name="character_set_client"value="utf8mb4"},{name="character_set_server"value="utf8mb4"}]options=[{option_name="MARIADB_AUDIT_PLUGIN"option_settings=[{name="SERVER_AUDIT_EVENTS"value="CONNECT"},{name="SERVER_AUDIT_FILE_ROTATIONS"value="37"},]},]}
1
2
rulesets:- Terraform / AWS # Rules to enforce / AWS.
Request a personalized demo
Get Started with Datadog
Ask AI
AI-generated responses may be inaccurate. Verify important info.