[CDRIVER-3506] Support 2-round-trip SCRAM exchange Created: 28/Jan/20 Updated: 28/Jan/20 Resolved: 28/Jan/20 |
|
| Status: | Closed |
| Project: | C Driver |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Improvement | Priority: | Major - P3 |
| Reporter: | Sara Golemon | Assignee: | Sara Golemon |
| Resolution: | Duplicate | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||||||
| Description |
|
MongoDB server >= 4.3.4 improves SCRAM-SHA-1 and SCRAM-SHA-256 to be capable of completing in two network round trips rather than the current three. We can inform the server to attempt the shorter exchange by passing an options document along with the saslStart command containing `skipEmptyExchange == true`. The remaining logic in mongoc-cluster.c is already capable to finishing early. |