diff --git a/packages/api/src/auth/authProvider.js b/packages/api/src/auth/authProvider.js index 8d4b4c93f..ab8b6ea3b 100644 --- a/packages/api/src/auth/authProvider.js +++ b/packages/api/src/auth/authProvider.js @@ -9,7 +9,7 @@ const jwt = require('jsonwebtoken'); const logger = getLogger('authProvider'); class AuthProviderBase { - async login(login, password) { + async login(login, password, options = undefined) { return {}; } diff --git a/packages/api/src/controllers/auth.js b/packages/api/src/controllers/auth.js index 53facc759..1193dc435 100644 --- a/packages/api/src/controllers/auth.js +++ b/packages/api/src/controllers/auth.js @@ -27,6 +27,8 @@ function authMiddleware(req, res, next) { '/auth/login', '/stream', 'storage/get-connections-for-login-page', + '/connections/dblogin', + '/connections/dblogin-auth', ]; // console.log('********************* getAuthProvider()', getAuthProvider()); diff --git a/packages/api/src/controllers/connections.js b/packages/api/src/controllers/connections.js index 5a80a972b..eae4688fe 100644 --- a/packages/api/src/controllers/connections.js +++ b/packages/api/src/controllers/connections.js @@ -17,6 +17,7 @@ const platformInfo = require('../utility/platformInfo'); const { connectionHasPermission, testConnectionPermission } = require('../utility/hasPermission'); const pipeForkLogs = require('../utility/pipeForkLogs'); const requireEngineDriver = require('../utility/requireEngineDriver'); +const { getAuthProvider } = require('../auth/authProvider'); const logger = getLogger('connections'); @@ -410,4 +411,14 @@ module.exports = { return { error: err.message }; } }, + + dbloginAuth_meta: true, + async dbloginAuth({ conid, user, password }) { + const saveResp = await this.saveVolatile({ conid, user, password, test: true }); + if (saveResp.msgtype == 'connected') { + const loginResp = await getAuthProvider().login(user, password, { conid: saveResp._id }); + return loginResp; + } + return saveResp; + }, }; diff --git a/packages/web/src/LoginPage.svelte b/packages/web/src/LoginPage.svelte index 7a29626e3..6d75ad057 100644 --- a/packages/web/src/LoginPage.svelte +++ b/packages/web/src/LoginPage.svelte @@ -1,30 +1,36 @@