For AI agents: A markdown version of this page is available at https://docs.datadoghq.com/security/code_security/iac_security/iac_rules/ansible-aws-ca-certificate-identifier-is-outdated.md.
A documentation index is available at /llms.txt.
RDS instances must specify a CA certificate identifier so the database uses a known AWS CA for TLS connections and avoids broken or insecure certificate chains during CA rotations. For Ansible RDS resources (modules amazon.aws.rds_instance and rds_instance), the ca_certificate_identifier property must be defined and set to rds-ca-2019. Resources missing this property or specifying a different value are flagged. Update the value if AWS publishes a newer CA identifier.
Secure Ansible task example:
- name:create RDS instance with CAamazon.aws.rds_instance:db_instance_identifier:my-dbengine:mysqlinstance_class:db.t3.mediumallocated_storage:20username:adminpassword:secretca_certificate_identifier:rds-ca-2019
Compliant Code Examples
- name:create minimal aurora instance in default VPC and default subnet groupamazon.aws.rds_instance:engine:auroradb_instance_identifier:ansible-test-aurora-db-instanceinstance_type:db.t2.smallpassword:'{{ password }}'username:'{{ username }}'cluster_id:ansible-test-clusterca_certificate_identifier:rds-ca-2019- name:Create a DB instance using the default AWS KMS encryption keyamazon.aws.rds_instance:db_instance_identifier:test-encrypted-dbid:test-encrypted-dbstate:presentengine:mariadbstorage_encrypted:truedb_instance_class:db.t2.mediumusername:'{{ username }}'password:'{{ password }}'allocated_storage:'{{ allocated_storage }}'ca_certificate_identifier:rds-ca-2019
Non-Compliant Code Examples
---- name:create minimal aurora instance in default VPC and default subnet groupamazon.aws.rds_instance:engine:auroradb_instance_identifier:ansible-test-aurora-db-instanceinstance_type:db.t2.smallpassword:"{{ password }}"username:"{{ username }}"cluster_id:ansible-test-clusterca_certificate_identifier:rds-ca-2015- name:create a DB instance using the default AWS KMS encryption keyamazon.aws.rds_instance:db_instance_identifier:test-encrypted-dbid:test-encrypted-dbstate:presentengine:mariadbstorage_encrypted:Truedb_instance_class:db.t2.mediumusername:"{{ username }}"password:"{{ password }}"allocated_storage:"{{ allocated_storage }}"
1
2
rulesets:- Ansible / AWS # Rules to enforce / AWS.
Request a personalized demo
Get Started with Datadog
Ask AI
AI-generated responses may be inaccurate. Verify important info.