Before you start
What problem does this solve?
Remote HTTP requests in the desktop app have two different behaviors depending on how they are routed. Certain fetches use webview + javascript, which works natively with OS provided certificate trust stores. In some enterprise cases, mTLS is required for endpoints, which then prompt the user to select their certificate.
However, the native rust HTTP isn't configured in such a way that the OS provided trust store is accessible, which means requests that require mTLS (such as OGC GetCapabilities) fail as the client side application doesn't allow the user to present their certificate.
Proposed solution
Users should have a similar experience as the javascript/WebView fetch requests where if a server requires mTLS, the user is prompted for their certificate. I do not know if rust has any way to natively prompt the user for their certificate interatively.
As a secondary, less desired option, the application should either let a user pass in a path to both their CA verify certificate and a .pem or .p12 + passphrase for user certificate, but this presents a lot more configuration o nthe user end as well as possible security concerns.
Estimated scope
Medium: a broader feature that is feasible in a reasonable timeframe
Alternatives considered
Currently none. Any native rust HTTP request method fails if accessing an enterprise http endpoint protected by mTLS.
Before you start
What problem does this solve?
Remote HTTP requests in the desktop app have two different behaviors depending on how they are routed. Certain fetches use webview + javascript, which works natively with OS provided certificate trust stores. In some enterprise cases, mTLS is required for endpoints, which then prompt the user to select their certificate.
However, the native rust HTTP isn't configured in such a way that the OS provided trust store is accessible, which means requests that require mTLS (such as OGC GetCapabilities) fail as the client side application doesn't allow the user to present their certificate.
Proposed solution
Users should have a similar experience as the javascript/WebView
fetchrequests where if a server requires mTLS, the user is prompted for their certificate. I do not know if rust has any way to natively prompt the user for their certificate interatively.As a secondary, less desired option, the application should either let a user pass in a path to both their CA verify certificate and a .pem or .p12 + passphrase for user certificate, but this presents a lot more configuration o nthe user end as well as possible security concerns.
Estimated scope
Medium: a broader feature that is feasible in a reasonable timeframe
Alternatives considered
Currently none. Any native rust HTTP request method fails if accessing an enterprise http endpoint protected by mTLS.