-
Type: Bug
-
Resolution: Unresolved
-
Priority: Major - P3
-
None
-
Component/s: Authentication
-
None
Summary
As part of DRIVERS-2836, https://github.com/mongodb/specifications/pull/1569/ changed the parsing behavior for connection strings in a way that diverges further from standard URL behavior.
We discussed this in https://mongodb.slack.com/archives/C04PGGEFCNM/p1715183576564499 and settled on reverting this PR for now and instead documenting that, if an auth mechanism property value contains a comma, it must be passed in the connection options and not be part of the connection string.
Motivation
Who is the affected end user?
Any user who interacts with connection strings programmatically.
How does this affect the end user?
It breaks with existing guarantees about connection string parsing behavior.
How likely is it that this problem or use case will occur?
Somewhat.
If the problem does occur, what are the consequences and how severe are they?
Different drivers and different libraries will parse connection strings ambiguously.
Is this issue urgent?
We should address this issue before users start relying on the behavior specified in the PR mentioned above.
Is this ticket required by a downstream team?
Needed to complete OIDC work in drivers such as Node.js and downstream products of that driver.
Is this ticket only for tests?
No.
Acceptance Criteria
- Revert https://github.com/mongodb/specifications/pull/1569/
- Clarify expectations about TOKEN_RESOURCE connection string behavior:
- Document that commas (,) may not be included in the values of key-value lists in the connection string.
- Keep/add a spec test that ensures that values in key-value lists can contain colon characters (:)
- related to
-
DRIVERS-2836 OIDC Spec Cleanup
- Implementing
- split to
-
CDRIVER-5580 Disallow comma character in authMechanismProperties connection string value
- Backlog
-
CXX-3036 Disallow comma character in authMechanismProperties connection string value
- Backlog
-
RUBY-3482 Disallow comma character in authMechanismProperties connection string value
- Backlog
-
RUST-1954 Disallow comma character in authMechanismProperties connection string value
- Backlog
-
PHPC-2397 Disallow comma character in authMechanismProperties connection string value
- Blocked
-
CSHARP-5106 Disallow comma character in authMechanismProperties connection string value
- Closed
-
GODRIVER-3226 Disallow comma character in authMechanismProperties connection string value
- Closed
-
JAVA-5486 Disallow comma character in authMechanismProperties connection string value
- Closed
-
MOTOR-1321 Disallow comma character in authMechanismProperties connection string value
- Closed
-
NODE-6194 Disallow comma character in authMechanismProperties connection string value
- Closed
-
PYTHON-4463 Disallow comma character in authMechanismProperties connection string value
- Closed