【发布时间】:2015-09-30 01:05:48
【问题描述】:
pg-gem 有没有办法使用 sslmode = verify-full 来连接它的 postgres?这会像传递那个字符串一样简单吗?我有一个 Rails 应用程序,我想对外部数据库进行完整的 ca 保护 ssl 连接,但我真的不知道如何设置其中的 ca 部分。在 sslmode 上使用 require 会默认使用 ssl 流量,但我不知道应该在哪里(或在哪个用户下等)放置我的证书以进行验证。我是否应该将它们放在 ~/.postgresql/ 下,就像在正常的 psql 客户端工作流程中一样,以验证名称为 root.crt 和 postgresql.cert 和 postgresql.key 的 ssl 证书?
如果有帮助的话,我正在使用 Postgres 9.1。
为后来的人编辑:
以下 database.yml 文件似乎可以在我的开发机器上进行测试。我肯定会写一篇关于这个问题的博客文章,因为它是一个这样的 PITA 来找出问题所在。
host: 127.0.0.1
sslcert: <%= Rails.root.join('config', 'client.crt') %>
sslkey: <%= Rails.root.join('config', 'client.key') %>
sslrootcert: <%= Rails.root.join('config', 'root.crt') %>
sslmode: verify-full
database: pg-test_development
username: postgres
password:
【问题讨论】:
标签: ruby-on-rails ruby postgresql ruby-on-rails-4 postgresql-9.1