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

macOS: AutoFill does not see WebDAV databases added by the main app #333

Closed
gencys opened this issue Jan 6, 2024 · 3 comments
Closed

macOS: AutoFill does not see WebDAV databases added by the main app #333

gencys opened this issue Jan 6, 2024 · 3 comments
Labels
bug Something isn't working macOS macOS-specific issue wontfix This will not be worked on

Comments

@gencys
Copy link

gencys commented Jan 6, 2024

Description
After adding a database on a WebDav server, adding it to KeePassium and enabling AutoFill, the AutoFill popup asks to add a database and doesn't show the previously added database.

How to reproduce
Steps to reproduce the behavior:

  1. Open KeePassium
  2. Add a database hosted on a WebDav server
  3. Enable AutoFill
  4. Go to a password form
  5. Open the autofill promt
  6. See that the database is not there and the prompt asks to add one.

Expected behavior
KeePassium should remember the database over WebDav that was added before.

Screenshots
https://github.com/keepassium/KeePassium/assets/43763900/ed668422-b9b6-4c9a-9f15-1247abc9c04f
https://github.com/keepassium/KeePassium/assets/43763900/d91bf8c5-5984-4161-ae3c-3f87f4e8bfac

Environment:

  • Device: MacBook Pro, 16-inch, 2019
  • OS: MacOS 14.2.1
  • App Version: v1.48.142

Additional context
I did a fresh install of KeePassium to make sure there was no conflict with any previous database's backups.

@gencys gencys added the bug Something isn't working label Jan 6, 2024
@keepassium
Copy link
Owner

Hi, thank you for the feedback and sorry for such a delay.

I can confirm that on macOS databases added to the main app do not appear in AutoFill. Basically, they maintain independent file lists.

The reason is system's security restrictions. The main app and its AutoFill extension run as two separate processes. When you pick a file via the standard system dialog, KeePassium receives a special reference to the file (a security-scoped bookmark).

That file reference is very restricted, it allows access to the selected file only, only from the calling process (KeePassium), and only on this device. Reinstall the file provider, reinstall the app, try passing the reference to another process — and it won't work. That's security scoping at work.

As I mentioned, the AutoFill extension runs in a separate process. So it cannot resolve references created by the main app. This has been a major problem for years, until Apple fixed this in iOS 14. But on macOS the restrictions remain and AutoFill has its own file list.

This is also listed in AutoFill onboarding screen:
macos-autofill-onboarding

Now, all the above applies to the system's file selection dialog and KeePassium's internal WebDAV connection is not subject to these limitations. But I think it would be even more confusing if only some files added in the main app would show up in AutoFill. So, as a lesser evil, I would rather keep the file lists completely separated.

@keepassium keepassium changed the title macOS: AutoFill does not work with vaults on WebDav server macOS: AutoFill does not see WebDAV databases added by the main app Jan 17, 2024
@keepassium keepassium added macOS macOS-specific issue wontfix This will not be worked on labels Jan 17, 2024
@keepassium keepassium closed this as not planned Won't fix, can't repro, duplicate, stale Jan 17, 2024
@gencys
Copy link
Author

gencys commented Jan 17, 2024

Alright fair enough thanks for the detailed answer @keepassium and sorry I missed that info there... However it's kinda confusing and tedious for us that when we want to add the DB on WebDav we have to have mounted the WebDav server in the Finder so that we can go and open it in the Finder via the popup. So do you think it'd be possible to have the autofill popup ask for the WebDav creds like the main app does ? (I can open a new issue if necessary)

@keepassium
Copy link
Owner

So do you think it'd be possible to have the autofill popup ask for the WebDav creds like the main app does ?

Wait, doesn't it already? 🤔

Ah, perhaps you mean the "AutoFill Setup" dialog above. Yes, this is an oversight, I'll get this fixed.

In the meanwhile, click "Skip" in that dialog and then you can get to WebDAV setup via the Plus button → Connect to server.

keepassium added a commit that referenced this issue Mar 6, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working macOS macOS-specific issue wontfix This will not be worked on
Projects
None yet
Development

No branches or pull requests

2 participants