diff --git a/internal/sql_workbench/service/sql_workbench_service.go b/internal/sql_workbench/service/sql_workbench_service.go index ab2d0ecf..a4176ff1 100644 --- a/internal/sql_workbench/service/sql_workbench_service.go +++ b/internal/sql_workbench/service/sql_workbench_service.go @@ -861,13 +861,9 @@ type datasourceBaseInfo struct { } const ( - mongoDefaultDatabaseParam = "default_database" - mongoAuthDatabaseParam = "auth_source" - mongoAuthMechanismParam = "auth_mechanism" - mongoReplicaSetParam = "replica_set" - mongoTLSEnabledParam = "tls" - mongoDirectConnectionParam = "direct_connection" - mongoTLSSkipVerifyParam = "tls_skip_verify" + mongoDefaultDatabaseParam = "default_database" + mongoAuthDatabaseParam = "auth_source" + mongoReplicaSetParam = "replica_set" redisDefaultDatabaseParam = "default_database" ) @@ -1039,25 +1035,9 @@ func buildMongoDatasourceOptions(dbService *biz.DBService) (*string, interface{} if authDB := dbService.AdditionalParams.GetParam(mongoAuthDatabaseParam).String(); authDB != "" { jdbcParams["authSource"] = authDB } - if authMechanism := dbService.AdditionalParams.GetParam(mongoAuthMechanismParam).String(); authMechanism != "" { - jdbcParams["authMechanism"] = authMechanism - } if replicaSet := dbService.AdditionalParams.GetParam(mongoReplicaSetParam).String(); replicaSet != "" { jdbcParams["replicaSet"] = replicaSet } - if tlsParam := dbService.AdditionalParams.GetParam(mongoTLSEnabledParam); tlsParam != nil && tlsParam.String() != "" { - if tlsParam.Bool() { - jdbcParams["tls"] = "true" - } else { - jdbcParams["tls"] = "false" - } - } - if dbService.AdditionalParams.GetParam(mongoDirectConnectionParam).Bool() { - jdbcParams["directConnection"] = true - } - if dbService.AdditionalParams.GetParam(mongoTLSSkipVerifyParam).Bool() { - jdbcParams["tlsInsecure"] = true - } if len(jdbcParams) == 0 { return defaultSchema, nil, nil diff --git a/internal/sql_workbench/service/sql_workbench_service_test.go b/internal/sql_workbench/service/sql_workbench_service_test.go index 6cd3d4de..af0d8408 100644 --- a/internal/sql_workbench/service/sql_workbench_service_test.go +++ b/internal/sql_workbench/service/sql_workbench_service_test.go @@ -217,11 +217,7 @@ func Test_buildMongoDatasourceOptions(t *testing.T) { AdditionalParams: pkgParams.Params{ &pkgParams.Param{Key: mongoDefaultDatabaseParam, Value: defaultDB, Type: pkgParams.ParamTypeString}, &pkgParams.Param{Key: mongoAuthDatabaseParam, Value: "admin", Type: pkgParams.ParamTypeString}, - &pkgParams.Param{Key: mongoAuthMechanismParam, Value: "SCRAM-SHA-256", Type: pkgParams.ParamTypeString}, &pkgParams.Param{Key: mongoReplicaSetParam, Value: "rs0", Type: pkgParams.ParamTypeString}, - &pkgParams.Param{Key: mongoTLSEnabledParam, Value: "true", Type: pkgParams.ParamTypeBool}, - &pkgParams.Param{Key: mongoDirectConnectionParam, Value: "true", Type: pkgParams.ParamTypeBool}, - &pkgParams.Param{Key: mongoTLSSkipVerifyParam, Value: "true", Type: pkgParams.ParamTypeBool}, }, }) if defaultSchema == nil || *defaultSchema != defaultDB { @@ -233,32 +229,27 @@ func Test_buildMongoDatasourceOptions(t *testing.T) { if jdbcParams["authSource"] != "admin" { t.Fatalf("unexpected authSource: %#v", jdbcParams["authSource"]) } - if jdbcParams["authMechanism"] != "SCRAM-SHA-256" { - t.Fatalf("unexpected authMechanism: %#v", jdbcParams["authMechanism"]) - } if jdbcParams["replicaSet"] != "rs0" { t.Fatalf("unexpected replicaSet: %#v", jdbcParams["replicaSet"]) } - if jdbcParams["tls"] != "true" { - t.Fatalf("unexpected tls: %#v", jdbcParams["tls"]) - } - if jdbcParams["directConnection"] != true || jdbcParams["tlsInsecure"] != true { - t.Fatalf("unexpected jdbc params: %#v", jdbcParams) - } } -func Test_buildMongoDatasourceOptions_tlsOnly(t *testing.T) { +func Test_buildMongoDatasourceOptions_authAndReplicaOnly(t *testing.T) { _, propertiesValue, jdbcParams := buildMongoDatasourceOptions(&biz.DBService{ DBType: string(pkgConst.DBTypeMongoDB), AdditionalParams: pkgParams.Params{ - &pkgParams.Param{Key: mongoTLSEnabledParam, Value: "true", Type: pkgParams.ParamTypeBool}, + &pkgParams.Param{Key: mongoAuthDatabaseParam, Value: "admin", Type: pkgParams.ParamTypeString}, + &pkgParams.Param{Key: mongoReplicaSetParam, Value: "rs0", Type: pkgParams.ParamTypeString}, }, }) if propertiesValue != nil { t.Fatalf("expected nil properties, got %#v", propertiesValue) } - if jdbcParams["tls"] != "true" { - t.Fatalf("expected tls in jdbcUrlParameters when only tls is configured, got %#v", jdbcParams) + if jdbcParams["authSource"] != "admin" || jdbcParams["replicaSet"] != "rs0" { + t.Fatalf("unexpected jdbc params: %#v", jdbcParams) + } + if len(jdbcParams) != 2 { + t.Fatalf("expected only authSource+replicaSet, got %#v", jdbcParams) } }