我使用Amazon RDS Postgresql实例在Elastic Beanstalk上有一个Rails应用程序.
我想pg使用SSL连接到这个数据库.
在http://docs.aws.amazon.com/AmazonRDS/[…]之后,我在/config/ca/rds.pem保存了rds-combined-ca-bundle.pem,我的database.yml看起来像这样:
production: adapter: postgresql database: <%= ENV['DB_NAME'] %> username: <%= ENV['DB_USERNAME'] %> password: <%= ENV['DB_PASSWORD'] %> host: <%= ENV['DB_ADDRESS'] %> port: <%= ENV['DB_PORT'] %> sslmode: 'require' sslrootcert: 'config/ca/rds.pem'
但我不知道它是否真的使用SSL:我可以将sslrootcert路径更改为任何内容,而我的应用程序仍在运行.我错过了什么?
解决方法
在您的database.yml中,您必须使用sslmode:’verify-full’而不是sslmode:’require’,以便在SSL证书中验证针对端点的实例端点.这样就可以使用证书了.