From 83c118bbbd20449dc938c54b429c46cb82b5c8ef Mon Sep 17 00:00:00 2001 From: Andrew Woodlee Date: Tue, 27 Dec 2022 11:03:02 -0600 Subject: [PATCH] added explict auth for mongoDB when used in prod reference: https://www.mongodb.com/docs/drivers/node/current/fundamentals/authentication/mechanisms/ --- lib/site-platform.js | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/lib/site-platform.js b/lib/site-platform.js index 3b390d0..b6cb950 100644 --- a/lib/site-platform.js +++ b/lib/site-platform.js @@ -34,7 +34,16 @@ module.connectDatabase = async (/*dtp*/) => { host: process.env.MONGODB_HOST, database: process.env.MONGODB_DATABASE, }); - const mongoConnectUri = `mongodb://${process.env.MONGODB_HOST}/${process.env.MONGODB_DATABASE}`; + const mongoInfo = { + host: process.env.MONGODB_HOST, + db: process.env.MONGODB_DATABASE, + username: encodeURIComponent(process.env.MONGODB_USERNAME), + password: encodeURIComponent(process.env.MONGODB_PASSWORD), + } + let mongoConnectUri = `mongodb://${process.env.MONGODB_HOST}/${process.env.MONGODB_DATABASE}`; + if (process.env.NODE_ENV === 'production'){ + mongoConnectUri = `mongodb://${mongoInfo.username}:${mongoInfo.password}@${mongoInfo.host}/${mongoInfo.db}`; + } module.db = await mongoose.connect(mongoConnectUri, { socketTimeoutMS: 0, keepAlive: true,