From 7d18e773f97181cb4c448fb408b10b64cc95319f Mon Sep 17 00:00:00 2001 From: Mathias Wagner Date: Wed, 2 Aug 2023 17:14:11 +0200 Subject: [PATCH] Encrypted the Group.ts model --- src/models/Group.ts | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/models/Group.ts b/src/models/Group.ts index d3ca4fa..7442397 100644 --- a/src/models/Group.ts +++ b/src/models/Group.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 IGroup { projectId: ObjectId, @@ -9,7 +11,7 @@ export interface IGroup { const GroupSchema = new Schema({ projectId: { - type: Types.ObjectId, + type: String, required: true }, name: { @@ -23,4 +25,10 @@ const GroupSchema = new Schema({ permissions: [String] }); +GroupSchema.plugin(fieldEncryption, { + fields: ["projectId", "name", "description", "permissions"], + secret: process.env.ENC_KEY, + saltGenerator: () => process.env.SIG_KEY +}); + export const Group = model("groups", GroupSchema); \ No newline at end of file