Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Linux keyring dependant application trigger unlock on no-name/empty DB #10761

Open
GameLostException opened this issue May 15, 2024 · 3 comments

Comments

@GameLostException
Copy link

GameLostException commented May 15, 2024

Overview

I have KPXC (KeepassXC) setup as my default Linux Secret Service since a while now and all worked well. I am suddenly facing this issue: when a Linux secret-service dependent app needs access, it makes KPXC pop a dialog to open a DB, but the DB name is empty and it ignores the fact there is already a DB open and unlocked.

Steps to Reproduce

  1. Setup KPXC as the Linux's default Secret Service: Application Settings > Secret Service Integration > tick "Enable KeepassXC Freedesktop.org Secret Service Integration"
  2. Trigger a system Secret Service prompt, e.g. start Chrome, open a password protected network location on Thunar, etc.

Expected Behavior

If no DB is opened yet, KPXC prompts to open the currently know DB. If the currently known DB is already open and unlocked, there is nothing to do and the system get what it needs.

Actual Behavior

Regardless of an existing DB and its lock status, KPXC prompts to unlock a DB with empty name " ". Trying to unlock it with a dummy password returns "File does not exist." => notice the 2 spaces instead of 1 between "File" and "does":
image

Context

The issue started to happen after a reboot, but no system/config update was applied between the two running sessions.
My config:
OS: Arch Linux x86_64
Host: XPS 15 9520
Kernel: 6.6.30-1-lts
Shell: zsh 5.9
DE: Xfce 4.18
WM: awesome
Terminal: kitty
CPU: 12th Gen Intel i9-12900HK (20) @ 4.900GHz
GPU: NVIDIA GeForce RTX 3050 Ti Mobile
GPU: Intel Alder Lake-P GT2 [Iris Xe Graphics]
Memory: 10875MiB / 31769MiB

KeePassXC - Version 2.7.7
Revision: 68e2dd8

Qt 5.15.13
Debugging mode is disabled.

Operating system: Arch Linux
CPU architecture: x86_64
Kernel: linux 6.6.30-1-lts

Operating System: Linux
Desktop Env: XFCE with Gnome keyring
Windowing System: X11

@michaelk83
Copy link

Are you using KeeShare or did a manual merge with some other database? If so, it's probably #9371 (fixed in 2.7.8). Though the symptom is kinda strange.
In any case, make sure your Secret Service settings are still correct (exposed group etc).

@GameLostException
Copy link
Author

Hi @michaelk83, I am not using KeeShare but I remember I did a manual DB merge on my previous session indeed. Looking into the details of the Application Settings > Secret Service Integration > General tab's "Exposed database groups" table, my DB was not exposing any group anymore as you predicted.

Updating the setting to the ad-hoc group within my DB solved my issue, thanks a lot for your prompt and very accurate answer! 🥇

Not sure if I should close this ticket as resolved knowing the app still misbehaved in a way that seems not yet raised, please let me know the next step.

@droidmonkey
Copy link
Member

droidmonkey commented May 15, 2024

This is still a bug because we shouldn't show a blank dialog like that.

This may be related to #7832 since we don't handle the defaults very well, but this isn't on the dbus side but the keepassxc side

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants