Persistent Login is ignored on MacOS
I am using Commander (16.11.15 installed via PKG) on MacOS 14.5 with an M2 CPU. I have Persistent Login set and my device timeout is 14 days, however, I am prompted to perform SSO authentication after every command.
I have a second machine running Ubuntu 24.04 and Commander 16.11.14 (installed via pip) that does not exhibit the same behavior and seems to respect the device timeout.
I am also unable to install Commander via pip on the Mac as it runs into dependency issues with libav.
Please let me know what additional information I can provide.
I have Persistent Login set and my device timeout is 14 days, however, I am prompted to perform SSO authentication after every command.
this-device command displays account/device settings. Some settings (persistent login ON/OFF, and logout timeout) may be controlled by Keeper Administrator.
Commander 16.11.14 (installed via pip) that does not exhibit the same behavior and seems to respect the device timeout Do you use the same account to login?
The configuration file config.json cannot be shared between multiple Commander instances if persistent login setting is ON. Make sure that every instance/installation of the Commander uses its own copy of the configuration file. (device_token property of the config.json file should be unique)
I am also unable to install Commander via pip on the Mac as it runs into dependency issues with libav.
The Commander is expected to be installed in its own Python virtual environment. It is really hard to tell what the other Python package the Commander conflicts with.
I am not sharing the config.json between the two machines, they were configured separately as I use them for different functions, I have no issues with Commander on the Linux box.
The pip install is done using pipx so it does have it's own venv.
Do you use the same account on your MacOS and Linux boxes?
What is the this-device command output on the MacOS box?
pipx may install Python packages globally
https://pipx.pypa.io/stable/installation/#-global-argument
Here is the list of packages the Commander depends on:
https://github.com/Keeper-Security/Commander/blob/master/requirements.txt
libav is a part of aiortc package.
Can you install aiortc package separately?
I do use the same account on both machines.
I managed to get the python package installed, I needed to install ffmpeg6 (which got me libav) as well as Python 3.12 as I had issues with the newer versions.
Persistent login is still an issue, however, here is the output of my this-device:
Device Name: Commander CLI on macOS
Data Key Present: YES
IP Auto Approve: ON
Persistent Login: ON
Security Key No PIN: OFF
Device Logout Timeout: 14 days
Is SSO User: True
I still cannot run more than one command without having to authenticate every time.
Is it possible that config.json file is read-only?
You can see the file location by typing
v -v
The file is not read-only, but is only writable by my local user.
The Commander needs to be able to write to this file
I am running commander under the same user
The Commander team is not aware of any persistent login issue when it stops working with no reason. You mentioned the Linux box does not have this issue. What happens if you swap configuration files? The persistent login can be disabled by the Keeper administrator (you mentioned that Linux box uses the same account. It is not the case then)
The Commander updates config.json file on successful login. The clone_code property is changed.
Can you confirm clone_code property of the config.json file is changed after every login?