Add optional AWS SDK v2-based MONGODB-AWS authenticator submodule

XMLWordPrintableJSON

    • Type: New Feature
    • Resolution: Unresolved
    • Priority: Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • None
    • None
    • Go Drivers
    • 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?
    • None
    • None
    • None
    • None
    • None
    • None

      The build in MONGODB-AWS authenticator in the Go driver uses a minimal internal AWS implementation that derives the signing region from the server-sent STS host (sm.Host), ignoring standard AWS SDK environment variables like AWS_STS_REGIONAL_ENDPOINT=regional and AWS_REGION. This forces users to create custom authenticator solutions which can be rather complicated (see here).

      This ticket proposes that we create an optional submodule:

      go.mongodb.org/mongo-driver/v2/x/driver/auth/mongoaws
      

      That depends on github.com/aws/aws-sdk-go-v2 so that users can optionally register an AuthenticatorFactory that uses the official AWS SDK

      import "go.mongodb.org/mongo-driver/v2/x/driver/auth/mongoaws"
      
      func main() {
          auth.RegisterAuthenticatorFactory(auth.MongoDBAWS,mongoaws.AF)
      }
      

            Assignee:
            Preston Vasquez
            Reporter:
            Preston Vasquez
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:

                Estimated:
                Original Estimate - 3 days
                3d
                Remaining:
                Remaining Estimate - 3 days
                3d
                Logged:
                Time Spent - Not Specified
                Not Specified