-
Type: Improvement
-
Resolution: Works as Designed
-
Priority: Major - P3
-
Affects Version/s: 1.7.0
-
Component/s: None
-
None
Allowing an unescaped "/" or other special character in the key file path, key file password, or the certificate authority file path introduces a parsing ambiguity. It violates the Connection String Spec's algorithm, which requires a driver to parse hostnames and user info from the URI segment before the last "/" character, and requires the driver to parse the options from the segment after the last "/" character. Thus we can't correctly parse a URI like this without violating the spec:
"mongodb://server/?sslclientcertificatekeyfile=/tmp/key.pem"
We can't parse that string while conforming to the spec, because the segment before the last "/" character is this:
"mongodb://server/?sslclientcertificatekeyfile=/tmp"
Instead, we must require this syntax:
"mongodb://server/?sslclientcertificatekeyfile=%2Ftmp%2Fkey.pem"
- is related to
-
CDRIVER-2186 More Connection String Spec updates
- Closed
- related to
-
CDRIVER-2004 Add SSL Configuration options to the URI / Enable X.509 auth through URI
- Closed