Pg
gem sử dụng libpq
nội bộ, cùng một thư viện máy khách với các công cụ PostgreSQL như psql
.
Theo mặc định libpq
tìm trong ~/.postgresql/
cho chứng chỉ CA.
Từ hướng dẫn sử dụng :
... và ...
AFAIK Rails chuyển bất cứ thứ gì bạn đưa vào database.yml
đến Pg
gem, chuyển nó tới libpq
như một tham số kết nối. Vì vậy, bạn sẽ có thể thêm các mục nhập khóa / giá trị vào database.yml
của mình khổ thơ như:
sslmode: verify-full
# and if you don't want to use ~/.postgresq/root.crt for the cert location, set:
sslrootcert: /path/to/my/app/root/cert.crt
IMO yêu cầu để chuyển một chứng chỉ gốc duy nhất tới libpq
là một lỗi thiết kế. Nó sẽ tải một cơ sở dữ liệu chứng chỉ đáng tin cậy. Các vấn đề tương tự cũng tồn tại đối với việc sử dụng chứng chỉ máy khách SSL, trong đó bạn không thể cung cấp kho khóa và cửa hàng chứng chỉ, bạn phải chuyển các tệp cụ thể cho một máy chủ nhất định. Có vẻ như điều đó có thể ổn đối với bạn vì bạn biết cơ quan ký chứng chỉ ngược dòng.