gpt4 book ai didi

node.js - 如何通过 SSL 连接以 Sequelize 数据库

转载 作者:行者123 更新时间:2023-12-05 00:15:41 26 4
gpt4 key购买 nike

我似乎找不到任何关于 SEQUELIZE.JS 的文档,关于如何使用 CA.crt 来启用与我位于远程服务器上的数据库的连接。

我在选项中找到了一些东西,但我似乎无法弄清楚

我试过了

{
'ssl': true
'dialectOptions':{
ssl: {
ca: 'path/to/ca'
}
}
}

和其他一些事情,但似乎对我不起作用。

有谁能够帮我?

编辑:

这是我在使用 ca 时遇到的错误
error connecting to db { Error: unable to verify the first certificate
at TLSSocket.<anonymous>

最佳答案

由于您没有提到选择的后端数据库,我将提供一个 mysql 示例以及我建议您如何去做。

首先,直接使用 dialect 确认连接,因此 mysql2 根据需要提供变量:

const connection = mysql.createConnection({
host: dbVars.host,
user: dbVars.user,
database: dbVars.database,
password: dbVars.password,
ssl: {
key: cKey,
cert: cCert,
ca: cCA
}
});

确认该连接后,将其移动到 Sequelize 为:
const sequelize = new Sequelize(dbVars.database, dbVars.user, dbVars.password, {
host: dbVars.host,
dialect: 'mysql',
dialectOptions: {
ssl: {
key: cKey,
cert: cCert,
ca: cCA
}
}
});

注意:正确加载证书是一个学习曲线,需要使用 import 的直接 raw-loader 。例子:
import cKey from 'raw-loader!../certs/client-key.pem'; 

关于node.js - 如何通过 SSL 连接以 Sequelize 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43948920/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com