[CDRIVER-3642] Store scram secrets in topology scanner Created: 29/Apr/20 Updated: 05/May/23 |
|
| Status: | Backlog |
| Project: | C Driver |
| Component/s: | None |
| Affects Version/s: | 1.17.0-rc0 |
| Fix Version/s: | None |
| Type: | Task | Priority: | Major - P3 |
| Reporter: | Andreas Braun | Assignee: | Unassigned |
| Resolution: | Unresolved | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Epic Link: | CDRIVER-4575 |
| Description |
|
Scram secrets are currently cached in mongoc_cluster_t, which is not available when doing speculative auth for single-threaded clients in the topology scanner. To work around this limitation, scram secrets should no longer be cached in mongoc_cluster_t, but rather mongoc_topology_scanner_t. This came up during the code review for |
| Comments |
| Comment by Githook User [ 05/May/23 ] |
|
Author: {'name': 'Andreas Braun', 'email': 'alcaeus@users.noreply.github.com', 'username': 'alcaeus'}Message:
`mongoc_topology_scanner_node_disconnect` sets `stream` to NULL. That will result in the stream being recreated and state being reset in `mongoc_topology_scanner_node_setup`
This previously passed because SCRAM would fail speculativeAuthentication and restart the authentication steps. The restart would use the SCRAM cache. Now speculativeAuthentication succeeds. speculativeAuthentication in the topology scanner does not use the SCRAM cache (refer: CDRIVER-3642). This does not result in the expected error.
--------- Co-authored-by: Kevin Albertson <kevin.albertson@mongodb.com> |
| Comment by Githook User [ 05/May/23 ] |
|
Author: {'name': 'Andreas Braun', 'email': 'alcaeus@users.noreply.github.com', 'username': 'alcaeus'}Message:
`mongoc_topology_scanner_node_disconnect` sets `stream` to NULL. That will result in the stream being recreated and state being reset in `mongoc_topology_scanner_node_setup`
This previously passed because SCRAM would fail speculativeAuthentication and restart the authentication steps. The restart would use the SCRAM cache. Now speculativeAuthentication succeeds. speculativeAuthentication in the topology scanner does not use the SCRAM cache (refer: CDRIVER-3642). This does not result in the expected error.
--------- Co-authored-by: Kevin Albertson <kevin.albertson@mongodb.com> |