I found myself trying to connect to a RDS instance from a Python script while maintaining SSL encryption. The official documentation was a bit vague on how to do this so I spent some time digging and eventually found how it can be done. The following scripts provides a simple example of how to create and use such a connection.
Before you can run the script you need to download the CA certificate bundle file from Amazon (Link)
import mysql.connector SSL_CA='rds-combined-ca-bundle.pem' user='<user>' password='<password>' host='<rds instance endpoint>' database='<database name>' cnx = mysql.connector.connect(user, password, host, database, ssl_ca=SSL_CA) cnx.close()
That's it, you are now connected to the RDS database and ready to do all types of great things.
Script from Technowise (with minor edits)