encrypting password, key is stored on backend in .key file

This commit is contained in:
Jan Prochazka
2021-01-20 18:29:15 +01:00
parent 6a8a47cf03
commit 777c9a99a2
14 changed files with 155 additions and 34 deletions

View File

@@ -5,6 +5,7 @@ const nedb = require('nedb-promises');
const { datadir } = require('../utility/directories');
const socket = require('../utility/socket');
const { encryptConnection } = require('../utility/crypting');
function getPortalCollections() {
if (process.env.CONNECTIONS) {
@@ -59,10 +60,11 @@ module.exports = {
async save(connection) {
if (portalConnections) return;
let res;
const encrypted = encryptConnection(connection);
if (connection._id) {
res = await this.datastore.update(_.pick(connection, '_id'), connection);
res = await this.datastore.update(_.pick(connection, '_id'), encrypted);
} else {
res = await this.datastore.insert(connection);
res = await this.datastore.insert(encrypted);
}
socket.emitChanged('connection-list-changed');
return res;

View File

@@ -28,7 +28,7 @@ const hasPermission = require('../utility/hasPermission');
// }
const preinstallPluginMinimalVersions = {
'dbgate-plugin-mssql': '1.0.8',
'dbgate-plugin-mssql': '1.0.9',
'dbgate-plugin-mysql': '1.0.2',
'dbgate-plugin-postgres': '1.0.2',
'dbgate-plugin-csv': '1.0.8',