Keepassxc-browser: Within Brave on MacOS, I can't have KeePassXC Extension connect to KeePassXC

Created on 12 May 2019  路  14Comments  路  Source: keepassxreboot/keepassxc-browser

Expected Behavior

Would like to connect the KeePassXC Browser extension from within Brave, to the KeePassXC DB

Current Behavior

When pressing on the "Connect" button, nothing happen. Chromium & Brave browser integration are enabled in KeePassXC.

Possible Solution


Steps to Reproduce (for bugs)

  1. Keepass Icon > Settings > Connected Database > press the "Connect"button

Debug info


KeePassXC - Version 2.4.1 Revision: 7bafe65
KeePassXC-Browser - Version 1.4.3
Operating system - macOS Mojave (10.14)
Browser - Brave Version 0.63.55 Chromium: 74.0.3729.131 (Official Build) (64-bit)

bug macOS

Most helpful comment

Yeah, I noticed that too. I had to enable Chrome integration in KepassXC instead of Brave integration

All 14 comments

Confirmed it does not work. Brave + macOS

I've never succeed to get Brave working with macOS, even if the original PR that added support for it was approved and merged.

I wonder if they have sandboxed Brave and did not open the native messaging capability

Same here. I use the latest Brave Dev but also tried Brave stable. Here's some debug info I captured:

Connecting to native messaging host org.keepassxc.keepassxc_browser keepass.js:969 Failed to connect: Specified native messaging host not found. keepass.js:1192 Objectmessage: (...)get message: 茠 ()arguments: (...)caller: (...)length: 0name: ""__proto__: 茠 ()apply: 茠 apply()arguments: (...)bind: 茠 bind()call: 茠 call()caller: (...)constructor: 茠 Function()length: 0name: ""toString: 茠 toString()Symbol(Symbol.hasInstance): 茠 [Symbol.hasInstance]()get arguments: 茠 ()set arguments: 茠 ()get caller: 茠 ()set caller: 茠 ()__proto__: Object[[FunctionLocation]]: <unknown>[[Scopes]]: Scopes[0]No properties[[Scopes]]: Scopes[0]No properties__proto__: Object browser-polyfill.min.js:1 Returning a Promise is the preferred way to send a reply from an onMessage/onMessageExternal listener, as the sendResponse will be removed from the specs (See https://developer.mozilla.org/docs/Mozilla/Add-ons/WebExtensions/API/runtime/onMessage) Error at B (chrome-extension://oboonakemofpalcgghocfoadofidjkkk/browser-polyfill.min.js:1:8152) at chrome-extension://oboonakemofpalcgghocfoadofidjkkk/background/event.js:108:9 B @ browser-polyfill.min.js:1 keepass.js:1078 Error 5: Cannot connect to KeePassXC. Check that browser integration is enabled in KeePassXC settings. keepass.js:993 Connecting to native messaging host org.keepassxc.keepassxc_browser keepass.js:969 Failed to connect: Specified native messaging host not found. keepass.js:1192 {}message: (...)get message: 茠 ()arguments: (...)caller: (...)length: 0name: ""__proto__: 茠 ()apply: 茠 apply()arguments: (...)bind: 茠 bind()call: 茠 call()caller: (...)constructor: 茠 Function()length: 0name: ""toString: 茠 toString()Symbol(Symbol.hasInstance): 茠 [Symbol.hasInstance]()get arguments: 茠 ()set arguments: 茠 ()get caller: 茠 ()set caller: 茠 ()__proto__: Object[[FunctionLocation]]: <unknown>[[Scopes]]: Scopes[0][[Scopes]]: Scopes[0]No properties__proto__: constructor: 茠 ()__proto__: Object keepass.js:1078 Error 9: Key exchange was not successful.

That debug doesn't provide any new info. The native messaging host (meaning the proxy) cannot be found by the browser.

Removing
~/Library/Application\ Support/BraveSoftware/Brave-Browser/NativeMessagingHosts/org.keepassxc.keepassxc_browser.json
solved the issue for me.

KeePassXC - Version 2.4.3 Revision: 5d6ef0c
KeePassXC-Browser - Version 1.4.7
Operating system - macOS Mojave (10.14)
Browser - Brave Version 0.67.124 Chromium: 76.0.3809.100 (Official Build) (64-bit)

I have a similar problem with Brave 0.68.131 on Ubuntu Mate 18.04, just installed KeePassXC 2.3.1, which seems to be the latest version using apt install. When clicking the icon in the browser I receive the message "Cannot connect to KeePassXC. Check that browser integration is enabled in KeePassXC settings.", than after clicking reload I get "Key exchange was not successful.". I followed instructions in the documents on the KeePassXC website.

@Carlossuss Use the official PPA to install the latest version.

@Carlossuss Use the official PPA to install the latest version.

Thank you, that worked.

(Copy-paste from https://github.com/brave/brave-browser/issues/5074#issuecomment-541350928)

According to https://github.com/browserpass/browserpass-native/issues/43#issuecomment-481794094, this is caused by Brave browser still looking for native messaging hosts definitions from ~/Library/Application Support/Google/Chrome/NativeMessagingHosts, not ~/Library/Application Support/BraveSoftware/Brave-Browser{,-Dev,...}/NativeMessagingHosts.

I think this is a completely unexpected behavior and a bug of Brave browser.

Yeah, I noticed that too. I had to enable Chrome integration in KepassXC instead of Brave integration

If this is really a Brave bug, then this issue is closed.

Nice fix to just choose chrome though!

I know, this is old & closed. But almost a year later, I ran into the same problem. The simple solution provided by @Birkenstab did the job. Thank you.

Was this page helpful?
0 / 5 - 0 ratings