From a02eda2866cd43ec1794f66af6f7dee7069f1725 Mon Sep 17 00:00:00 2001 From: Alexey Lunin <alexey.lunin@vereign.com> Date: Sun, 31 Mar 2019 20:16:51 +0400 Subject: [PATCH] clear authentication values on clearing identities. Set correct session data on first login attempt (previous clients could have obsoleted session data uuid and token and worked incorrectly) --- javascript/src/iframe/viamapi-iframe.js | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/javascript/src/iframe/viamapi-iframe.js b/javascript/src/iframe/viamapi-iframe.js index 91c0fd2..299e912 100644 --- a/javascript/src/iframe/viamapi-iframe.js +++ b/javascript/src/iframe/viamapi-iframe.js @@ -520,18 +520,15 @@ const connection = Penpal.connectToParent({ } }); }, - clearIdentities() { - return new Penpal.Promise(result => { - var identitiesTemp = listIdentitiesFromLocalStorage(); + clearIdentities: async () => { + destroyAuthentication(); - for(var i in identitiesTemp) { - destroyIdentityFromLocalStorage(i) - } - result({"data" : "", - "code" : "200", - "status" : "Identities cleared" - }) - }); + const identitiesTemp = listIdentitiesFromLocalStorage(); + + for (const i in identitiesTemp) { + destroyIdentityFromLocalStorage(i); + } + return encodeResponse("200", "", "Identities cleared"); }, confirmIdentificator(identity, confirmationCodeArg) { return new Penpal.Promise(result => { @@ -612,6 +609,7 @@ const connection = Penpal.connectToParent({ } const deviceHash = await createDeviceHash(loginIdentity.authentication.publicKey); + window.viamApi.setSessionData("", ""); window.viamApi.setDeviceHash(deviceHash); window.viamApi.setIdentity(loginIdentity.authentication.publicKey); @@ -751,6 +749,7 @@ const connection = Penpal.connectToParent({ }, identityRestoreAccess(restoreAccessIdentity, identificator) { return new Penpal.Promise(result => { + viamApi.setSessionData("", ""); viamApi.setIdentity(restoreAccessIdentity.authentication.publicKey); executeRestfulFunction("public", viamApi, viamApi.identityRestoreAccess, null, identificator).then(executeResult => { -- GitLab