@domain.js/main 0.4.2 → 0.4.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/deps/aes/index.js
CHANGED
|
@@ -20,8 +20,8 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
20
20
|
};
|
|
21
21
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
22
|
exports.Main = void 0;
|
|
23
|
-
const cryptojs = __importStar(require("crypto-js/core"));
|
|
24
23
|
const AES = __importStar(require("crypto-js/aes"));
|
|
24
|
+
const cryptojs = __importStar(require("crypto-js/core"));
|
|
25
25
|
function Main() {
|
|
26
26
|
// aes-256-cbc encrypt
|
|
27
27
|
const encrypt = (message, key) => AES.encrypt(message, key).toString();
|
|
@@ -1,13 +1,22 @@
|
|
|
1
1
|
import { Model, Options, Sequelize } from "sequelize";
|
|
2
2
|
interface Cnf {
|
|
3
3
|
sequelize: {
|
|
4
|
-
[propName: string]: Options
|
|
4
|
+
[propName: string]: Options & {
|
|
5
|
+
/** 是否开启账号密码aes加密,以增强安全性 */
|
|
6
|
+
security?: boolean;
|
|
7
|
+
};
|
|
8
|
+
};
|
|
9
|
+
aes: {
|
|
10
|
+
key: string;
|
|
5
11
|
};
|
|
6
12
|
}
|
|
7
13
|
interface Deps {
|
|
8
14
|
Sequelize: {
|
|
9
15
|
Sequelize: typeof Sequelize;
|
|
10
16
|
};
|
|
17
|
+
aes: {
|
|
18
|
+
decrypt: (str: string, key: string) => string;
|
|
19
|
+
};
|
|
11
20
|
}
|
|
12
21
|
export declare const Deps: string[];
|
|
13
22
|
declare type NonConstructorKeys<T> = {
|
|
@@ -2,14 +2,18 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ModelBase = exports.Main = exports.Deps = void 0;
|
|
4
4
|
const sequelize_1 = require("sequelize");
|
|
5
|
-
exports.Deps = ["Sequelize"];
|
|
5
|
+
exports.Deps = ["Sequelize", "aes"];
|
|
6
6
|
function Main(cnf, deps) {
|
|
7
7
|
// 这里之所以要注入 Sequelize 是为了保证项目自身可以灵活选择自己的 Sequelize 版本, 这样改公共模块就会更加稳定, 避免频繁升级
|
|
8
|
-
const { sequelize: dbs } = cnf;
|
|
9
|
-
const { Sequelize } = deps;
|
|
8
|
+
const { sequelize: dbs, aes: { key: AES_KEY }, } = cnf;
|
|
9
|
+
const { Sequelize, aes } = deps;
|
|
10
10
|
const sequelizes = {};
|
|
11
11
|
for (const k of Object.keys(dbs)) {
|
|
12
12
|
const db = dbs[k];
|
|
13
|
+
if (db.security) {
|
|
14
|
+
db.username = aes.decrypt(db.username, AES_KEY);
|
|
15
|
+
db.password = aes.decrypt(db.password, AES_KEY);
|
|
16
|
+
}
|
|
13
17
|
sequelizes[k] = new Sequelize.Sequelize(db);
|
|
14
18
|
}
|
|
15
19
|
return sequelizes;
|