From 72014cadf6a92f0f46209811398b12cf9930864b Mon Sep 17 00:00:00 2001 From: Mathias Wagner Date: Wed, 2 Aug 2023 19:17:17 +0200 Subject: [PATCH] Added encryption to the Permission.ts model --- src/models/Permission.ts | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/models/Permission.ts b/src/models/Permission.ts index ac786fe..dcc6e36 100644 --- a/src/models/Permission.ts +++ b/src/models/Permission.ts @@ -1,4 +1,6 @@ -import {model, ObjectId, Schema, Types} from "mongoose"; +import {model, ObjectId, Schema} from "mongoose"; +import { fieldEncryption } from "mongoose-field-encryption"; +import process from "process"; export interface IPermission { projectId: ObjectId, @@ -8,7 +10,7 @@ export interface IPermission { const PermissionSchema = new Schema({ projectId: { - type: Types.ObjectId, + type: String, required: true }, permission: { @@ -21,4 +23,10 @@ const PermissionSchema = new Schema({ } }); +PermissionSchema.plugin(fieldEncryption, { + fields: ["projectId", "permission", "description"], + secret: process.env.ENC_KEY, + saltGenerator: () => process.env.SIG_KEY +}); + export const Permission = model("permissions", PermissionSchema); \ No newline at end of file