首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >用于PostgreSQL连接节点的SSL

用于PostgreSQL连接节点的SSL
EN

Stack Overflow用户
提问于 2014-03-10 21:37:49
回答 7查看 47.2K关注 0票数 44

我正在尝试连接到我的Heroku,但我一直收到PostgreSQL错误。有人知道如何在连接字符串中启用SSL吗?

代码语言:javascript
复制
postgres://user:pass@host:port/database;

我一直在到处寻找它,但它似乎不是一个很受欢迎的话题。顺便说一下,我正在运行Nodejs和node-pg模块及其连接池方法:

代码语言:javascript
复制
pg.connect(connString, function(err, client, done) {
  // Should work.
});

非常感谢您的评论。

EN

回答 7

Stack Overflow用户

发布于 2014-07-26 02:13:18

您可以这样实现:

代码语言:javascript
复制
postgres://user:pass@host:port/database?ssl=true
票数 70
EN

Stack Overflow用户

发布于 2015-05-08 03:16:15

在从node-postgres创建新客户端时,您也可以使用以下代码

代码语言:javascript
复制
var pg = require("pg");

var client = new pg.Client({
  user: "yourUser",
  password: "yourPass",
  database: "yourDatabase",
  port: 5432,
  host: "host.com",
  ssl: true
});

client.connect();

var query = client.query('CREATE TABLE people(id SERIAL PRIMARY KEY, name VARCHAR(100) not null)');

query.on('row', function(row) {
  console.log(row.name);
});

query.on('end', client.end.bind(client));

希望这能有所帮助!

票数 18
EN

Stack Overflow用户

发布于 2018-08-21 17:23:11

对于Google Cloud PG和pg-promise,我也有类似的需求。我得到的错误(使用?ssl=true)是connection requires a valid client certificate

虽然没有记录pg-promise的SSL连接,但它是建立在node-postgres之上的。如链接中所述,ssl配置参数可以不仅仅是true

代码语言:javascript
复制
const pgp = require('pg-promise')();
const fs = require('fs');

const connectionConf = {
    host: 'myhost.com',
    port: 5432,
    database: 'specific_db_name',
    user: 'my_App_user',
    password: 'aSecretePass',
    ssl: {
        rejectUnauthorized : false,
        ca   : fs.readFileSync("server-ca.pem").toString(),
        key  : fs.readFileSync("client-key.pem").toString(),
        cert : fs.readFileSync("client-cert.pem").toString(),
  }

};
const new_db = pgp(connectionConf);
new_db.any('SELECT * FROM interesting_table_a LIMIT 10')
    .then(res => {console.log(res);})
    .catch(err => {console.error(err);})
    .then(() => {new_db.$pool.end()});
票数 14
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22301722

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档