Uploaded image for project: 'Node.js Driver'
  1. Node.js Driver
  2. NODE-6365

Allow passing through `allowPartialTrustChain` flag

    • Type: Icon: Task Task
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 6.9.0
    • Affects Version/s: None
    • Component/s: None
    • 0
    • Not Needed
    • Not Needed
    • Hide

      1. What would you like to communicate to the user about this feature?
      2. Would you like the user to see examples of the syntax and/or executable code and its output?
      3. Which versions of the driver/connector does this apply to?

      Show
      1. What would you like to communicate to the user about this feature? 2. Would you like the user to see examples of the syntax and/or executable code and its output? 3. Which versions of the driver/connector does this apply to?

      (NB: consider the flag name set in stone once https://github.com/nodejs/node/pull/54790 is merged)

      Use Case

      As a... developer using the Node.js driver
      I want... to be able to pass through this option along with ca
      So that... I can configure Node.js's built-in OpenSSL to treat the ca option the same way other crypto libraries and applications (e.g. curl) do

      User Experience

      • The allowPartialTrustChain flag is treated like other TLS flags

      Dependencies

      • This is required for mongosh. After modifying devtools applications to consume the system TLS CA store and pass it to the driver, users started reporting a regression (details in HELP-64124) that would ideally be addressed through the use of this flag. We implemented a workaround (COMPASS-8252), which unfortunately comes with a significant performance overhead and which we therefore will want to remove as soon as possible, at least in mongosh.

      Risks/Unknowns

      • What could go wrong while implementing this change? (e.g., performance, inadvertent behavioral changes in adjacent functionality, existing tech debt, etc)
      • Is there an opportunity for better cross-driver alignment or testing in this area?
      • Is there an opportunity to improve existing documentation on this subject?

      Acceptance Criteria

      Implementation Requirements

      • functional reqs, potential snafus to avoid, performance targets, etc

      Testing Requirements

      • unit test, spec test sync, etc

      Documentation Requirements

      • DOCSP ticket, API docs, etc

      Follow Up Requirements

      • additional tickets to file, required releases, etc
      • if node behavior differs/will differ from other drivers, confirm with dbx devs what standard to aim for and what plan, if any, exists to reconcile the diverging behavior moving forward

            Assignee:
            anna.henningsen@mongodb.com Anna Henningsen
            Reporter:
            anna.henningsen@mongodb.com Anna Henningsen
            Neal Beeken
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: