Open LuccaRebelloToledo opened 3 days ago
I forked the repository and create a new versions of msal-common and msal-node with more logs for better analyze. The removeAccount method is called correct but in the removeAccountContext method on "lib\msal-common\src\cache\CacheManager.ts", the keys is not removed.
removeAccountContext Method:
Logs:
2024-09-20T14:13:36.943Z 5ccde16d-ad8f-41be-80d3-82c873cb9c48 INFO Level: 4 Message: [Fri, 20 Sep 2024 14:13:36 GMT] : [] : @azure/msal-node@2.14.0 : Trace - Removing account from cache: 00000000-0000-0000-c2ad-4496109a7efd.9188040d-6c67-4c5b-b112-36a304b66dad-login.windows.net-9188040d-6c67-4c5b-b112-36a304b66dad -- 2024-09-20T14:13:36.944Z 5ccde16d-ad8f-41be-80d3-82c873cb9c48 INFO Level: 4 Message: [Fri, 20 Sep 2024 14:13:36 GMT] : [] : @azure/msal-common@14.15.0 : Trace - CacheManager.removeAccount called with key: 00000000-0000-0000-c2ad-4496109a7efd.9188040d-6c67-4c5b-b112-36a304b66dad-login.windows.net-9188040d-6c67-4c5b-b112-36a304b66dad 2024-09-20T14:13:36.944Z 5ccde16d-ad8f-41be-80d3-82c873cb9c48 INFO Level: 4 Message: [Fri, 20 Sep 2024 14:13:36 GMT] : [] : @azure/msal-node@2.14.0 : Trace - Getting cache key-value store 2024-09-20T14:13:36.944Z 5ccde16d-ad8f-41be-80d3-82c873cb9c48 INFO Level: 4 Message: [Fri, 20 Sep 2024 14:13:36 GMT] : [] : @azure/msal-node@2.14.0 : Trace - Getting cache key-value store 2024-09-20T14:13:36.944Z 5ccde16d-ad8f-41be-80d3-82c873cb9c48 INFO Level: 4 Message: [Fri, 20 Sep 2024 14:13:36 GMT] : [] : @azure/msal-common@14.15.0 : Trace - CacheManager.removeAccount found account: 00000000-0000-0000-c2ad-4496109a7efd.9188040d-6c67-4c5b-b112-36a304b66dad 2024-09-20T14:13:36.944Z 5ccde16d-ad8f-41be-80d3-82c873cb9c48 INFO Level: 4 Message: [Fri, 20 Sep 2024 14:13:36 GMT] : [] : @azure/msal-node@2.14.0 : Trace - Getting in-memory cache 2024-09-20T14:13:36.944Z 5ccde16d-ad8f-41be-80d3-82c873cb9c48 INFO Level: 4 Message: [Fri, 20 Sep 2024 14:13:36 GMT] : [] : @azure/msal-node@2.14.0 : Trace - Getting cache key-value store 2024-09-20T14:13:36.944Z 5ccde16d-ad8f-41be-80d3-82c873cb9c48 INFO Level: 4 Message: [Fri, 20 Sep 2024 14:13:36 GMT] : [] : @azure/msal-common@14.15.0 : Trace - All token keys before: { "idToken": [ "00000000-0000-0000-c2ad-4496109a7efd.9188040d-6c67-4c5b-b112-36a304b66dad-login.windows.net-idtoken-4443f941-37fc-4834-8919-440a8d0a2ed0-9188040d-6c67-4c5b-b112-36a304b66dad---" ], "accessToken": [ "00000000-0000-0000-c2ad-4496109a7efd.9188040d-6c67-4c5b-b112-36a304b66dad-login.windows.net-accesstoken-4443f941-37fc-4834-8919-440a8d0a2ed0-9188040d-6c67-4c5b-b112-36a304b66dad-user.read calendars.readwrite openid profile--" ], "refreshToken": [ "00000000-0000-0000-c2ad-4496109a7efd.9188040d-6c67-4c5b-b112-36a304b66dad-login.windows.net-refreshtoken-4443f941-37fc-4834-8919-440a8d0a2ed0----" ] } 2024-09-20T14:13:36.944Z 5ccde16d-ad8f-41be-80d3-82c873cb9c48 INFO Level: 4 Message: [Fri, 20 Sep 2024 14:13:36 GMT] : [] : @azure/msal-node@2.14.0 : Trace - Getting cache key-value store 2024-09-20T14:13:36.944Z 5ccde16d-ad8f-41be-80d3-82c873cb9c48 INFO Level: 4 Message: [Fri, 20 Sep 2024 14:13:36 GMT] : [] : @azure/msal-node@2.14.0 : Trace - Setting cache key value store 2024-09-20T14:13:36.944Z 5ccde16d-ad8f-41be-80d3-82c873cb9c48 INFO Level: 4 Message: [Fri, 20 Sep 2024 14:13:36 GMT] : [] : @azure/msal-node@2.14.0 : Trace - Getting cache key-value store 2024-09-20T14:13:36.944Z 5ccde16d-ad8f-41be-80d3-82c873cb9c48 INFO Level: 4 Message: [Fri, 20 Sep 2024 14:13:36 GMT] : [] : @azure/msal-node@2.14.0 : Trace - Getting cache key-value store 2024-09-20T14:13:36.944Z 5ccde16d-ad8f-41be-80d3-82c873cb9c48 INFO Level: 4 Message: [Fri, 20 Sep 2024 14:13:36 GMT] : [] : @azure/msal-node@2.14.0 : Trace - Setting cache key value store 2024-09-20T14:13:36.944Z 5ccde16d-ad8f-41be-80d3-82c873cb9c48 INFO Level: 4 Message: [Fri, 20 Sep 2024 14:13:36 GMT] : [] : @azure/msal-node@2.14.0 : Trace - Getting cache key-value store 2024-09-20T14:13:36.944Z 5ccde16d-ad8f-41be-80d3-82c873cb9c48 INFO Level: 4 Message: [Fri, 20 Sep 2024 14:13:36 GMT] : [] : @azure/msal-node@2.14.0 : Trace - Setting cache key value store 2024-09-20T14:13:36.944Z 5ccde16d-ad8f-41be-80d3-82c873cb9c48 INFO Level: 4 Message: [Fri, 20 Sep 2024 14:13:36 GMT] : [] : @azure/msal-common@14.15.0 : Trace - All token keys after: { "idToken": [ "00000000-0000-0000-c2ad-4496109a7efd.9188040d-6c67-4c5b-b112-36a304b66dad-login.windows.net-idtoken-4443f941-37fc-4834-8919-440a8d0a2ed0-9188040d-6c67-4c5b-b112-36a304b66dad---" ], "accessToken": [ "00000000-0000-0000-c2ad-4496109a7efd.9188040d-6c67-4c5b-b112-36a304b66dad-login.windows.net-accesstoken-4443f941-37fc-4834-8919-440a8d0a2ed0-9188040d-6c67-4c5b-b112-36a304b66dad-user.read calendars.readwrite openid profile--" ], "refreshToken": [ "00000000-0000-0000-c2ad-4496109a7efd.9188040d-6c67-4c5b-b112-36a304b66dad-login.windows.net-refreshtoken-4443f941-37fc-4834-8919-440a8d0a2ed0----" ] } 2024-09-20T14:13:36.944Z 5ccde16d-ad8f-41be-80d3-82c873cb9c48 INFO Level: 4 Message: [Fri, 20 Sep 2024 14:13:36 GMT] : [] : @azure/msal-node@2.14.0 : Trace - Getting cache key-value store 2024-09-20T14:13:36.944Z 5ccde16d-ad8f-41be-80d3-82c873cb9c48 INFO Level: 4 Message: [Fri, 20 Sep 2024 14:13:36 GMT] : [] : @azure/msal-node@2.14.0 : Trace - Setting cache key value store 2024-09-20T14:13:36.944Z 5ccde16d-ad8f-41be-80d3-82c873cb9c48 INFO Level: 4 Message: [Fri, 20 Sep 2024 14:13:36 GMT] : [] : @azure/msal-node@2.14.0 : Trace - Getting cache key-value storeIn new tests, I added more logs inside the loops.
2024-09-20T14:32:09.586Z 9b77ce8b-458e-4ee8-aeda-791386b0c117 INFO Level: 4 Message: [Fri, 20 Sep 2024 14:32:09 GMT] : [] : @azure/msal-common@14.15.0 : Trace - Account ID: 00000000-0000-0000-c2ad-4496109a7efd.9188040d-6c67-4c5b-b112-36a304b66dad-login.windows.net -- 2024-09-20T14:32:09.586Z 9b77ce8b-458e-4ee8-aeda-791386b0c117 INFO Level: 4 Message: [Fri, 20 Sep 2024 14:32:09 GMT] : [] : @azure/msal-common@14.15.0 : Trace - idToken - Checking key: 00000000-0000-0000-c2ad-4496109a7efd.9188040d-6c67-4c5b-b112-36a304b66dad-login.windows.net-idtoken-4443f941-37fc-4834-8919-440a8d0a2ed0-9188040d-6c67-4c5b-b112-36a304b66dad--- 2024-09-20T14:32:09.586Z 9b77ce8b-458e-4ee8-aeda-791386b0c117 INFO Level: 4 Message: [Fri, 20 Sep 2024 14:32:09 GMT] : [] : @azure/msal-common@14.15.0 : Trace - Removing idToken key: 00000000-0000-0000-c2ad-4496109a7efd.9188040d-6c67-4c5b-b112-36a304b66dad-login.windows.net-idtoken-4443f941-37fc-4834-8919-440a8d0a2ed0-9188040d-6c67-4c5b-b112-36a304b66dad---After another tests the functionality of the removeAccount is correct. But, after:
The afterCacheAccess in DistributedCachePlugin is called and the result of kvStore is {} and the accountEntities is []. So, in this moment i dont have my partition key to make the new input. I gonna this use the partitionManager.getKey() to make the the updated if !accountEntities.length
I identified the problem. I'll write the pull request with the fix :)
Core Library
MSAL Node (@azure/msal-node)
Core Library Version
2.13.1
Wrapper Library
Not Applicable
Wrapper Library Version
0.0.0
Public or Confidential Client?
Confidential
Description
After implementing the partition manager, the remove Account method no longer works, the storage token is not removed or becomes empty data.
CacheClient Implementation
Partition Manager Implementation
RemoveAccount Implementation
Error Message
Nothing Error Messages.
MSAL Logs
2024-09-20T12:32:02.167Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 2 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Info - getTokenCache called 2024-09-20T12:32:02.167Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - getAllAccounts called 2024-09-20T12:32:02.428Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - Deserializing JSON to in-memory cache 2024-09-20T12:32:02.428Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - Reading cache snapshot from disk 2024-09-20T12:32:02.428Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - Overlaying input cache with the default cache 2024-09-20T12:32:02.428Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - Setting in-memory cache 2024-09-20T12:32:02.428Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - Getting cache key-value store 2024-09-20T12:32:02.428Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - Setting cache key value store 2024-09-20T12:32:02.428Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - Getting in-memory cache 2024-09-20T12:32:02.428Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - Getting cache key-value store 2024-09-20T12:32:02.428Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - Getting cache key-value store 2024-09-20T12:32:02.428Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - Getting cache key-value store 2024-09-20T12:32:02.428Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - Getting in-memory cache 2024-09-20T12:32:02.428Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - Getting cache key-value store 2024-09-20T12:32:02.428Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-common@14.14.2 : Trace - CacheManager - getIdToken called 2024-09-20T12:32:02.428Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - Getting cache key-value store 2024-09-20T12:32:02.429Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-common@14.14.2 : Trace - getAliasesFromMetadata called with source: config 2024-09-20T12:32:02.429Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-common@14.14.2 : Trace - getAliasesFromMetadata called with source: hardcoded_values 2024-09-20T12:32:02.429Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-common@14.14.2 : Trace - getAliasesFromMetadata: found cloud discovery metadata in hardcoded_values, returning aliases 2024-09-20T12:32:02.429Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 2 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-common@14.14.2 : Info - CacheManager:getIdToken - Returning ID token 2024-09-20T12:32:02.429Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - Getting cache key-value store 2024-09-20T12:32:02.429Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - Serializing in-memory cache 2024-09-20T12:32:02.429Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - Getting in-memory cache 2024-09-20T12:32:02.429Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - Getting cache key-value store 2024-09-20T12:32:02.429Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - Reading cache snapshot from disk 2024-09-20T12:32:02.429Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - Merging in-memory cache with cache snapshot 2024-09-20T12:32:02.429Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - Remove updated entries in cache 2024-09-20T12:32:02.608Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 2 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Info - getTokenCache called 2024-09-20T12:32:02.608Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - removeAccount called 2024-09-20T12:32:02.708Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - Deserializing JSON to in-memory cache 2024-09-20T12:32:02.708Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - Reading cache snapshot from disk 2024-09-20T12:32:02.708Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - Overlaying input cache with the default cache 2024-09-20T12:32:02.708Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - Setting in-memory cache 2024-09-20T12:32:02.708Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - Getting cache key-value store 2024-09-20T12:32:02.708Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - Setting cache key value store 2024-09-20T12:32:02.708Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - Getting cache key-value store 2024-09-20T12:32:02.708Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - Getting cache key-value store 2024-09-20T12:32:02.708Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - Getting in-memory cache 2024-09-20T12:32:02.708Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - Getting cache key-value store 2024-09-20T12:32:02.709Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - Getting cache key-value store 2024-09-20T12:32:02.709Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - Setting cache key value store 2024-09-20T12:32:02.709Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - Getting cache key-value store 2024-09-20T12:32:02.709Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - Getting cache key-value store 2024-09-20T12:32:02.709Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - Setting cache key value store 2024-09-20T12:32:02.709Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - Getting cache key-value store 2024-09-20T12:32:02.709Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - Setting cache key value store 2024-09-20T12:32:02.709Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - Getting cache key-value store 2024-09-20T12:32:02.709Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - Setting cache key value store 2024-09-20T12:32:02.709Z 824ae031-e9d2-474e-b4a4-a3bef1feed3b INFO Level: 4 Message: [Fri, 20 Sep 2024 12:32:02 GMT] : [] : @azure/msal-node@2.13.1 : Trace - Getting cache key-value storeNetwork Trace (Preferrably Fiddler)
MSAL Configuration
Relevant Code Snippets
Reproduction Steps
Expected Behavior
I hope of the stored cache is remove or data empty. Independent of the cache client i using.
My cache data after using the removeAccount method:
Identity Provider
Entra ID (formerly Azure AD) / MSA
Browsers Affected (Select all that apply)
None (Server)
Regression
No response
Source
Internal (Microsoft)