diff --git a/ui/desktop/electron-app/src/helpers/spawn-promise.js b/ui/desktop/electron-app/src/helpers/spawn-promise.js index c1dd3d699..384f41d49 100644 --- a/ui/desktop/electron-app/src/helpers/spawn-promise.js +++ b/ui/desktop/electron-app/src/helpers/spawn-promise.js @@ -25,9 +25,14 @@ module.exports = { * @param {string} command * @return {Promise} */ - spawnAsyncJSONPromise(command) { + spawnAsyncJSONPromise(command, token) { return new Promise((resolve, reject) => { - const childProcess = spawn(path(), command); + const childProcess = spawn(path(), command, { + env: { + ...process.env, + BOUNDARY_TOKEN: token + } + }); let outputStream = ''; let errorStream = ''; diff --git a/ui/desktop/electron-app/src/models/session.js b/ui/desktop/electron-app/src/models/session.js index e52a5419c..360363771 100644 --- a/ui/desktop/electron-app/src/models/session.js +++ b/ui/desktop/electron-app/src/models/session.js @@ -48,13 +48,16 @@ class Session { */ start() { const command = this.cliCommand(); - return spawnAsyncJSONPromise(command).then((spawnedSession) => { - this.#process = spawnedSession.childProcess; - this.#proxyDetails = spawnedSession.response; - this.#process = spawnedSession.childProcess; - this.#id = this.#proxyDetails.session_id; - return this.#proxyDetails; - }); + const sanitizedToken = sanitizer.base62EscapeAndValidate(this.#token); + return spawnAsyncJSONPromise(command, sanitizedToken).then( + (spawnedSession) => { + this.#process = spawnedSession.childProcess; + this.#proxyDetails = spawnedSession.response; + this.#process = spawnedSession.childProcess; + this.#id = this.#proxyDetails.session_id; + return this.#proxyDetails; + } + ); } /** @@ -87,14 +90,13 @@ class Session { cliCommand() { const sanitized = { target_id: sanitizer.base62EscapeAndValidate(this.#targetId), - token: sanitizer.base62EscapeAndValidate(this.#token), addr: sanitizer.urlValidate(this.#addr), }; const command = [ 'connect', `-target-id=${sanitized.target_id}`, - `-token=${sanitized.token}`, + `-token=env://BOUNDARY_TOKEN`, `-addr=${sanitized.addr}`, '-format=json', ];