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

Allow other certificates #8126

Closed
koppor opened this issue Oct 6, 2021 · 4 comments · Fixed by #8583
Closed

Allow other certificates #8126

koppor opened this issue Oct 6, 2021 · 4 comments · Fixed by #8583
Labels
good first issue An issue intended for project-newcomers. Varies in difficulty. type: enhancement

Comments

@koppor
Copy link
Member

koppor commented Oct 6, 2021

When working behind a SSL proxy, the SSL proxy presents another SSL certificate. When not using that certificate, the DOI fetcher returns "Connection error" without any further information:

image

IMHO JabRef should offer the possibility to:

  • use an own key store
    • activated through preferences
  • import .cer files into that key store
    • possibility offered using the preferences

See https://stackoverflow.com/q/18889058/873282 for some code hints.

Somehow refs #7627. Here, we have an SSL certificate issue. There, we have a proxy authentication error.

@koppor koppor added type: enhancement good first issue An issue intended for project-newcomers. Varies in difficulty. labels Oct 6, 2021
@Siedlerchr
Copy link
Member

In the shared database dialog we also offer the possibility to provide a custom key file/store

@koppor
Copy link
Member Author

koppor commented Oct 8, 2021

Current state in the shared database dialog:

image

I would propose to move that settings to the preferences dialog:

image

  • Add new category "SSL Certificates"
  • Switch between "JabRef internal key store" and "Custom key store" with a file browsing possibility (to here, the part of the shared database dialog is moved)
  • Add possiblit y(button) to browse and add .cer file to the key store selected in step 2

@koppor
Copy link
Member Author

koppor commented Oct 18, 2021

Additional/alternative approach:

  • An SSL certificate should be downloaded if SSL error appears --> auto-import man-in-the-middle SSL certificate (e.g., company proxy)
  • When download fails due to SSL error, a configuration dialog shown be shown

@HoussemNasri
Copy link
Member

HoussemNasri commented Mar 18, 2022

  • Switch between "JabRef internal key store" and "Custom key store" with a file browsing possibility (to here, the part of

How about having a single checkbox to enable or disable custom certificates, similar to Proxy Configuration, and custom certificates will be added on top of JabRef internal Keystore (which if I understand correctly is empty for now)

Edit: I see that Java uses this as its default truststore $JAVA_HOME/jre/lib/security/cacerts, so I guess the solution would be to copy the default truststore into the app files, set javax.net.ssl.trustStore property to our truststore and then modify it according to user interactions

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
good first issue An issue intended for project-newcomers. Varies in difficulty. type: enhancement
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants