From 3a719c7927e9fc764d5be2e7a1ec576ed323bece Mon Sep 17 00:00:00 2001 From: Steven Silvester Date: Wed, 29 May 2024 10:11:28 -0500 Subject: [PATCH] update connection string logic --- source/auth/auth.md | 5 ----- source/connection-string/connection-string-spec.md | 7 +++++-- 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/source/auth/auth.md b/source/auth/auth.md index 17c3f8bc36..b456d1cbaa 100644 --- a/source/auth/auth.md +++ b/source/auth/auth.md @@ -1201,11 +1201,6 @@ in the MONGODB-OIDC specification, including sections or blocks that specificall #### [MongoCredential](#mongocredential) Properties -> [!NOTE] -> Drivers MUST parse the `TOKEN_RESOURCE` by splitting only on the first `:` character. Drivers MUST document that users -> must specify `TOKEN_RESOURCE` as part of a `MongoClient` option it contains a comma `,` character, since it would -> interfere with the parsing rules for `authMechanismProperties`. - - username\ MAY be specified. Its meaning varies depending on the OIDC provider integration used. diff --git a/source/connection-string/connection-string-spec.md b/source/connection-string/connection-string-spec.md index 3c558ef3cc..b6b50d10bb 100644 --- a/source/connection-string/connection-string-spec.md +++ b/source/connection-string/connection-string-spec.md @@ -216,8 +216,11 @@ The values in connection options MUST be URL decoded by the parser. The values c ``` - Key value pairs: A value that represents one or more key and value pairs. Multiple key value pairs are delimited by a - comma (","). The key is everything up to the first colon sign (":") and the value is everything afterwards. If any - keys or values containing a comma (",") or a colon (":") they must be URL encoded. For example: + comma (","). The key is everything up to the first colon sign (":") and the value is everything afterwards. Drivers + MUST handle subsequent colon signs (":") within the value, unless otherwise specified in this document.\ + If any keys + or values contain a comma (",") they MUST not be provided as part of the connection string, since it would interfere + with parsing. For example: ``` ?readPreferenceTags=dc:ny,rack:1