[CXX-1541] Handshake changes for SDAM and Auth Created: 29/Mar/18  Updated: 28/Oct/23  Resolved: 21/Aug/18

Status: Closed
Project: C++ Driver
Component/s: Implementation
Affects Version/s: None
Fix Version/s: 3.4.0

Type: New Feature Priority: Major - P3
Reporter: Rathi Gnanasekaran Assignee: Unassigned
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
depends on CDRIVER-2579 Handshake changes for SDAM and Auth Closed
is depended on by DRIVERS-466 Handshake changes for SDAM and Auth Closed
Epic Link: CXX MongoDB 4.0 Support

 Description   

tl;dr:

  • Monitoring-only sockets must not send SCRAM mechanism negotiation in isMaster and must not authenticate at all.
  • Non-monitoring sockets (e.g. connection pool or single-threaded client) do a "normal" handshake and authenticate if there are credentials.
  • An authentication error on a socket must close all (and only) non-monitoring sockets to the same server.

Possible backward breaking change:

  • Some drivers were resetting a server's topology description to Unknown on an authentication error and should stop doing so. This means the topology will always be "correct" even when authentication fails.
  • It will no longer be possible for authentication errors to be masked as server selection errors.

Detailed changes:



 Comments   
Comment by A. Jesse Jiryu Davis [ 21/May/18 ]

This will be resolved by updating libmongoc 1.11.

Generated at Wed Feb 07 22:03:00 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.