How to refresh user credentials used by the VSCode InterSystems Server Manager Extension?
Hello everyone, I am working with the VSCode extension by connecting to clients' IRIS servers remotely with my personal user (pdileo). However, one of the development environments was recently updated and my user was created for the second time with a different password.
I noticed that the VSCode extension no longer allows me to log in because the password has been changed, without asking me for a new one, only showing the 401 AxiosError. I observed that after a few attempts, the extension asks for new credentials, but I was wondering if there is an easy way to manually update the credentials or where they are actually stored. I also know that I could put the username and passwordo in the settings.json file, but I don't really like this option because of the exposure of credentials.
This is the error:
Thank you in advance
Comments
You can refresh the credentials by signing out the affected InterSystems Server Credentials account from VS Code, then signing in again so Server Manager prompts for the new password. The Server Manager extension exposes this through the Accounts menu in the VS Code activity bar, where the signed-in accounts can be managed and the account can be signed out. [1][2]
When you choose Sign Out, Server Manager lets you sign out the account after confirmation. If the password had previously been saved, you are also offered the option to delete the stored password, unless you changed the intersystemsServerManager.credentialsProvider.deletePasswordOnSignout setting. [1][2]
The stored password is not meant to live in settings.json unless you explicitly put it there yourself. Server Manager version 3 uses VS Code’s Authentication Provider API, and when you save the password it is stored securely in your workstation operating system’s keychain / native keystore. If you only press Enter instead of using the key button, the password is kept only until VS Code is restarted. [1][2][3]
Note: The best way to install and use this extension is by installing the InterSystems ObjectScript Extension Pack and following the documentation here. [1]
So the practical way to force a credential refresh is:
- Open the Accounts menu in the VS Code activity bar. [1]
- Find the relevant InterSystems Server Credentials signed-in account. [1][2]
- Choose Sign Out. [1][2]
- If offered, choose to delete the saved password as well. [1][2]
- Reconnect to the server so VS Code / Server Manager prompts for the password again. [1][2]
There is also support for managing which extensions are trusted to use that account via Manage Trusted Extensions, but that is separate from changing the password itself. [1][2]
Sources:
Credentials are handled from VSCode itself, rather than the Extension. There should be a little Security menu on the side bar just above Settings
Using this you should be able to clear any saved credentials on a server by server basis, and force a new passworded login