-
Notifications
You must be signed in to change notification settings - Fork 2.3k
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
KeePassXC-Browser chrome extension doesn't work in Brave on MacOS #5074
Comments
According to browserpass/browserpass-native#43 (comment), this is caused by Brave browser still looking for native messaging hosts definitions from I think this is a completely unexpected behavior and a bug of Brave browser. |
I did install Brave browser for the first time today and that leads me to the same connecting problem described here (thanks HarukaMa!). Brave Version 1.2.43 Chromium: 79.0.3945.130 (Official Build) (64-bit), MacOS 10.13.6, KeePassXC 2.5.2, KeePassXC-Browser extension 1.5.4. My solution to make it works was to enable browser integration for Google Chrome in KeePassXC (Brave is not even enabled!). So this bug still needs to be taken care of… |
I had the same issue. Brave Version 1.2.43 Like @jobeleau2, enabling Google Chrome in KeePassXC browser integration settings fixed the issue. |
Still occurring in Brave Version 1.8.96 Like @jobeleau2, and @haloid2010, enabling Google Chrome in KeePassXC browser integration settings fixed the issue. |
Strangely some similar fixed worked for me on macOS Catalina, running Brave and KeepassXC. I started Brave with debugging enabled (https://www.chromium.org/for-testers/enable-logging) and could see, that the manifest for KeepasssXC Extension could not be found. It was already in the following locations: ~/Library/Application\ Support/Chromium/NativeMessagingHosts/org.keepassxc.keepassxc_browser.json but I had to also copy it to: Very strange. Why is Brave looking there? I do not necessarily want my Native Messaging Hosts started from a "different" Browser ...?! Note: I did have Google Chrome and Chromium activated in KeepassXC Browser Integration Tab |
@ArneTR we look for them in |
@jonathansampson maybe we can look in |
sgtm, assuming permissions on |
still an issue. |
I guess I'm not sure how we want to handle this moving forward. We originally used |
I get the same on Linux. Looks like this is not MacOS-specific. |
Works for me on Linux.
|
I know you're on MacOS, but try the troubleshooting I did from this reddit post I made. What I mean is, search for keepassxc-proxy, then modify |
ContextThis is still an issue with Brave 1.37.111, KeePassXC 2.7.1 on macOS Monterey 12.3.1, getting the "Key exchange was not successful." error. Works perfectly fine with Firefox, and I don't have neither Chrome nor Chromium installed. FixAfter fumbling through the ~/Library/Application Support/{Mozilla,Google/Chrome,Chromium,BraveSoftware/Brave-Browser}/NativeMessagingHosts folders, I bypassed the issue this way:
ConclusionBeyond the choice of where Brave should look for the manifest (BraveSoftware/Brave-Browser/NativeMessagingHosts would be the most logical choice in my opinion), this seems like a KeePassXC bug, as KeePassXC explicitely allows to chose which browser(s) we want to connect to, and is clearly mishandling the Brave case. |
@vbouiller it's slightly more complex than this as explained above. Initially no extensions put things in |
I just noticed this was still open with the recent comments, but for me personally it is closed. I switched from keepass to bitwarden-rs(now vaultwarden) and never looked back. Would highly recommend it, it easily imports keepass dumps. |
Same. I have KeePassXC for Mac installed. I enabled the browser integration for Brave, my DB is open. Clicking on Connect in this extension does nothing, though. No console logs in the extension as well. |
martin-braun, I use it with Brave for many years now. May be you have to enable it for Chrome (same framework, if i remember well). |
@jobeleau2 I tried that without luck. I enabled Chrome, Chromium and Brave, my database is open, but the extension reports no database and the connect button still does nothing. |
Adding both Google Chrome and Chromium fixed it for me. I didn't check if only one of them would work. |
Description
KeePassXC-Browser chrome extension doesn't work in Brave or Brave-dev on MacOS. I have confirmed the extension works in Chrome.
Steps to Reproduce
Actual result:
Key exchange was not successful.
Expected result:
Reproduces how often:
Consistant
Brave version (brave://version info)
Version/Channel Information:
yes
didnt try
yes
didnt try
Other Additional Information:
n/a
n/a
No, extension works as expected on latest Chrome
Miscellaneous Information:
See related report on keepassxc-browser github: keepassxreboot/keepassxc-browser#541
debug info:
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.
The text was updated successfully, but these errors were encountered: