diff --git a/.evergreen/scripts/kms_tester.py b/.evergreen/scripts/kms_tester.py index 41c59322be..cc3df18b44 100644 --- a/.evergreen/scripts/kms_tester.py +++ b/.evergreen/scripts/kms_tester.py @@ -93,6 +93,8 @@ def setup_kms(sub_test_name: str) -> None: return if sub_test_target == "azure": + # Opt in to corporate Azure credentials (DRIVERS-3392). setup-secrets.sh + os.environ["FLE_AZURE_USE_CORPORATE"] = "YES" run_command("./setup-secrets.sh", cwd=kms_dir) if success: diff --git a/.evergreen/scripts/setup_tests.py b/.evergreen/scripts/setup_tests.py index 4a6e31c9cd..1a41b3a8b0 100644 --- a/.evergreen/scripts/setup_tests.py +++ b/.evergreen/scripts/setup_tests.py @@ -382,6 +382,8 @@ def handle_test_env() -> None: if not DRIVERS_TOOLS: raise RuntimeError("Missing DRIVERS_TOOLS") csfle_dir = Path(f"{DRIVERS_TOOLS}/.evergreen/csfle") + # Opt in to corporate Azure credentials (DRIVERS-3392) + os.environ["FLE_AZURE_USE_CORPORATE"] = "YES" run_command(f"bash {csfle_dir.as_posix()}/setup-secrets.sh", cwd=csfle_dir) load_config_from_file(csfle_dir / "secrets-export.sh") run_command(f"bash {csfle_dir.as_posix()}/start-servers.sh") diff --git a/test/asynchronous/unified_format.py b/test/asynchronous/unified_format.py index 9d311a946d..5913e3fcdf 100644 --- a/test/asynchronous/unified_format.py +++ b/test/asynchronous/unified_format.py @@ -477,7 +477,7 @@ class UnifiedSpecTestMixinV1(AsyncIntegrationTest): a class attribute ``TEST_SPEC``. """ - SCHEMA_VERSION = Version.from_string("1.26") + SCHEMA_VERSION = Version.from_string("1.28") RUN_ON_LOAD_BALANCER = True TEST_SPEC: Any TEST_PATH = "" # This gets filled in by generate_test_classes diff --git a/test/client-side-encryption/corpus/corpus-key-azure.json b/test/client-side-encryption/corpus/corpus-key-azure.json index 31a564edb8..0ec9737afb 100644 --- a/test/client-side-encryption/corpus/corpus-key-azure.json +++ b/test/client-side-encryption/corpus/corpus-key-azure.json @@ -7,7 +7,7 @@ }, "keyMaterial": { "$binary": { - "base64": "n+HWZ0ZSVOYA3cvQgP7inN4JSXfOH85IngmeQxRpQHjCCcqT3IFqEWNlrsVHiz3AELimHhX4HKqOLWMUeSIT6emUDDoQX9BAv8DR1+E1w4nGs/NyEneac78EYFkK3JysrFDOgl2ypCCTKAypkn9CkAx1if4cfgQE93LW4kczcyHdGiH36CIxrCDGv1UzAvERN5Qa47DVwsM6a+hWsF2AAAJVnF0wYLLJU07TuRHdMrrphPWXZsFgyV+lRqJ7DDpReKNO8nMPLV/mHqHBHGPGQiRdb9NoJo8CvokGz4+KE8oLwzKf6V24dtwZmRkrsDV4iOhvROAzz+Euo1ypSkL3mw==", + "base64": "Vlza0NjSsxbiJbHUM++3EWyhd5/m4QHv0ZaH87LsljVDltHNZyR9YBFOTDFE1RKeY/uGSW35IdOLVxpHvo1/qBz7E6Iv14obBmniRetWZq0wxerm72LlF+VPTHHmNn1sIv3TY/HsHSx7S1U/ILaKukD7hBKZ5/4A2tPOXtdnTzC4Rpc8bRjaM8heQSNEWbTBPqcQ9xD4YLi+uQlzbLZjQA+Ljr540QJEwa7RGw8J22eo1sb3vSeDAhR24GH6RPJ5v72yElGcOZrKCjxnbd4mrCtSHssfOzCnK2Dw3mHikSLeBFGjnlXydBWiTn2AlhOs+YpXdAJ6Zm3xjkdJOXKytg==", "subType": "00" } }, @@ -26,8 +26,8 @@ }, "masterKey": { "provider": "azure", - "keyVaultEndpoint": "key-vault-csfle.vault.azure.net", - "keyName": "key-name-csfle" + "keyVaultEndpoint": "drivers-3392-key-vault.vault.azure.net", + "keyName": "drivers-3392-keyname" }, "keyAltNames": ["azure"] } \ No newline at end of file diff --git a/test/client-side-encryption/etc/data/encryptedFields-substring-ci-di.json b/test/client-side-encryption/etc/data/encryptedFields-substring-ci-di.json index d6aadfb877..657faa5343 100644 --- a/test/client-side-encryption/etc/data/encryptedFields-substring-ci-di.json +++ b/test/client-side-encryption/etc/data/encryptedFields-substring-ci-di.json @@ -11,7 +11,7 @@ "bsonType": "string", "queries": [ { - "queryType": "substringPreview", + "queryType": "substring", "strMaxLength": { "$numberInt": "10" }, @@ -19,7 +19,7 @@ "$numberInt": "2" }, "strMaxQueryLength": { - "$numberInt": "10" + "$numberInt": "6" }, "contention": 0, "caseSensitive": false, @@ -28,4 +28,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/test/client-side-encryption/etc/data/encryptedFields-substring-preview.json b/test/client-side-encryption/etc/data/encryptedFields-substring-preview.json new file mode 100644 index 0000000000..a519edc627 --- /dev/null +++ b/test/client-side-encryption/etc/data/encryptedFields-substring-preview.json @@ -0,0 +1,33 @@ +{ + "fields": [ + { + "keyId": { + "$binary": { + "base64": "EjRWeBI0mHYSNBI0VniQEg==", + "subType": "04" + } + }, + "path": "encryptedText", + "bsonType": "string", + "queries": [ + { + "queryType": "substringPreview", + "strMaxLength": { + "$numberInt": "10" + }, + "strMinQueryLength": { + "$numberInt": "2" + }, + "strMaxQueryLength": { + "$numberInt": "6" + }, + "contention": { + "$numberLong": "0" + }, + "caseSensitive": true, + "diacriticSensitive": true + } + ] + } + ] +} diff --git a/test/client-side-encryption/etc/data/encryptedFields-substring.json b/test/client-side-encryption/etc/data/encryptedFields-substring.json index d321a32c5c..5e80f4fc95 100644 --- a/test/client-side-encryption/etc/data/encryptedFields-substring.json +++ b/test/client-side-encryption/etc/data/encryptedFields-substring.json @@ -1,6 +1,6 @@ { - "fields": [ - { + "fields": [ + { "keyId": { "$binary": { "base64": "EjRWeBI0mHYSNBI0VniQEg==", @@ -11,7 +11,7 @@ "bsonType": "string", "queries": [ { - "queryType": "substringPreview", + "queryType": "substring", "strMaxLength": { "$numberInt": "10" }, @@ -19,7 +19,7 @@ "$numberInt": "2" }, "strMaxQueryLength": { - "$numberInt": "10" + "$numberInt": "6" }, "contention": { "$numberLong": "0" @@ -29,5 +29,5 @@ } ] } - ] + ] } diff --git a/test/client-side-encryption/spec/legacy/azureKMS.json b/test/client-side-encryption/spec/legacy/azureKMS.json index b0f5111370..b3676f172e 100644 --- a/test/client-side-encryption/spec/legacy/azureKMS.json +++ b/test/client-side-encryption/spec/legacy/azureKMS.json @@ -103,7 +103,7 @@ }, "keyMaterial": { "$binary": { - "base64": "n+HWZ0ZSVOYA3cvQgP7inN4JSXfOH85IngmeQxRpQHjCCcqT3IFqEWNlrsVHiz3AELimHhX4HKqOLWMUeSIT6emUDDoQX9BAv8DR1+E1w4nGs/NyEneac78EYFkK3JysrFDOgl2ypCCTKAypkn9CkAx1if4cfgQE93LW4kczcyHdGiH36CIxrCDGv1UzAvERN5Qa47DVwsM6a+hWsF2AAAJVnF0wYLLJU07TuRHdMrrphPWXZsFgyV+lRqJ7DDpReKNO8nMPLV/mHqHBHGPGQiRdb9NoJo8CvokGz4+KE8oLwzKf6V24dtwZmRkrsDV4iOhvROAzz+Euo1ypSkL3mw==", + "base64": "Vlza0NjSsxbiJbHUM++3EWyhd5/m4QHv0ZaH87LsljVDltHNZyR9YBFOTDFE1RKeY/uGSW35IdOLVxpHvo1/qBz7E6Iv14obBmniRetWZq0wxerm72LlF+VPTHHmNn1sIv3TY/HsHSx7S1U/ILaKukD7hBKZ5/4A2tPOXtdnTzC4Rpc8bRjaM8heQSNEWbTBPqcQ9xD4YLi+uQlzbLZjQA+Ljr540QJEwa7RGw8J22eo1sb3vSeDAhR24GH6RPJ5v72yElGcOZrKCjxnbd4mrCtSHssfOzCnK2Dw3mHikSLeBFGjnlXydBWiTn2AlhOs+YpXdAJ6Zm3xjkdJOXKytg==", "subType": "00" } }, @@ -122,8 +122,8 @@ }, "masterKey": { "provider": "azure", - "keyVaultEndpoint": "key-vault-csfle.vault.azure.net", - "keyName": "key-name-csfle" + "keyVaultEndpoint": "drivers-3392-key-vault.vault.azure.net", + "keyName": "drivers-3392-keyname" }, "keyAltNames": [ "altname", diff --git a/test/client-side-encryption/spec/unified/QE-Text-substring.json b/test/client-side-encryption/spec/unified/QE-Text-substring.json new file mode 100644 index 0000000000..f42a297278 --- /dev/null +++ b/test/client-side-encryption/spec/unified/QE-Text-substring.json @@ -0,0 +1,467 @@ +{ + "description": "QE-Text-substring", + "schemaVersion": "1.25", + "runOnRequirements": [ + { + "minServerVersion": "9.0.0", + "topologies": [ + "replicaset", + "sharded", + "load-balanced" + ], + "csfle": { + "minLibmongocryptVersion": "1.20.0" + } + } + ], + "createEntities": [ + { + "client": { + "id": "client", + "autoEncryptOpts": { + "keyVaultNamespace": "keyvault.datakeys", + "kmsProviders": { + "local": { + "key": "Mng0NCt4ZHVUYUJCa1kxNkVyNUR1QURhZ2h2UzR2d2RrZzh0cFBwM3R6NmdWMDFBMUN3YkQ5aXRRMkhGRGdQV09wOGVNYUMxT2k3NjZKelhaQmRCZGJkTXVyZG9uSjFk" + } + } + }, + "observeEvents": [ + "commandStartedEvent" + ] + } + }, + { + "database": { + "id": "db", + "client": "client", + "databaseName": "db" + } + }, + { + "collection": { + "id": "coll", + "database": "db", + "collectionName": "coll" + } + } + ], + "initialData": [ + { + "databaseName": "keyvault", + "collectionName": "datakeys", + "documents": [ + { + "_id": { + "$binary": { + "base64": "q83vqxI0mHYSNBI0VniQEg==", + "subType": "04" + } + }, + "keyMaterial": { + "$binary": { + "base64": "HBk9BWihXExNDvTp1lUxOuxuZK2Pe2ZdVdlsxPEBkiO1bS4mG5NNDsQ7zVxJAH8BtdOYp72Ku4Y3nwc0BUpIKsvAKX4eYXtlhv5zUQxWdeNFhg9qK7qb8nqhnnLeT0f25jFSqzWJoT379hfwDeu0bebJHr35QrJ8myZdPMTEDYF08QYQ48ShRBli0S+QzBHHAQiM2iJNr4svg2WR8JSeWQ==", + "subType": "00" + } + }, + "creationDate": { + "$date": { + "$numberLong": "1648914851981" + } + }, + "updateDate": { + "$date": { + "$numberLong": "1648914851981" + } + }, + "status": { + "$numberInt": "0" + }, + "masterKey": { + "provider": "local" + } + } + ] + }, + { + "databaseName": "db", + "collectionName": "coll", + "documents": [], + "createOptions": { + "encryptedFields": { + "fields": [ + { + "keyId": { + "$binary": { + "base64": "q83vqxI0mHYSNBI0VniQEg==", + "subType": "04" + } + }, + "path": "encryptedText", + "bsonType": "string", + "queries": [ + { + "queryType": "substring", + "contention": { + "$numberLong": "0" + }, + "strMinQueryLength": { + "$numberLong": "3" + }, + "strMaxQueryLength": { + "$numberLong": "6" + }, + "strMaxLength": { + "$numberLong": "20" + }, + "caseSensitive": true, + "diacriticSensitive": true + } + ] + } + ] + } + } + } + ], + "tests": [ + { + "description": "Insert QE substring", + "operations": [ + { + "name": "insertOne", + "arguments": { + "document": { + "_id": 1, + "encryptedText": "foobar" + } + }, + "object": "coll" + } + ], + "expectEvents": [ + { + "client": "client", + "events": [ + { + "commandStartedEvent": { + "command": { + "listCollections": 1, + "filter": { + "name": "coll" + } + }, + "commandName": "listCollections" + } + }, + { + "commandStartedEvent": { + "command": { + "find": "datakeys", + "filter": { + "$or": [ + { + "_id": { + "$in": [ + { + "$binary": { + "base64": "q83vqxI0mHYSNBI0VniQEg==", + "subType": "04" + } + } + ] + } + }, + { + "keyAltNames": { + "$in": [] + } + } + ] + }, + "$db": "keyvault", + "readConcern": { + "level": "majority" + } + }, + "commandName": "find" + } + }, + { + "commandStartedEvent": { + "command": { + "insert": "coll", + "documents": [ + { + "_id": 1, + "encryptedText": { + "$$type": "binData" + } + } + ], + "ordered": true + }, + "commandName": "insert" + } + } + ] + } + ] + }, + { + "description": "Query with matching $encStrContains", + "operations": [ + { + "name": "insertOne", + "arguments": { + "document": { + "_id": 1, + "encryptedText": "foobar" + } + }, + "object": "coll" + }, + { + "name": "find", + "arguments": { + "filter": { + "$expr": { + "$encStrContains": { + "input": "$encryptedText", + "substring": "oba" + } + } + } + }, + "object": "coll", + "expectResult": [ + { + "_id": { + "$numberInt": "1" + }, + "encryptedText": "foobar", + "__safeContent__": [ + { + "$binary": { + "base64": "wpaMBVDjL4bHf9EtSP52PJFzyNn1R19+iNI/hWtvzdk=", + "subType": "00" + } + }, + { + "$binary": { + "base64": "IpY3x/jjm8j/74jAdUhgxdM5hk68zR0zv/lTKm/72Vg=", + "subType": "00" + } + }, + { + "$binary": { + "base64": "G+ky260C6QiOfIxKz14FmaMbAxvui1BKJO/TnLOHlGk=", + "subType": "00" + } + }, + { + "$binary": { + "base64": "7dv3gAKe9vwJMZmpB40pRCwRTmc7ds9UkGhxH8j084E=", + "subType": "00" + } + }, + { + "$binary": { + "base64": "o0V+Efn6x8XQdE80F1tztNaT3qxHjcsd9DOQ47BtmQk=", + "subType": "00" + } + }, + { + "$binary": { + "base64": "sJvrCjyVot7PIZFsdRehWFANKAj6fmBaj3FLbz/dZLE=", + "subType": "00" + } + }, + { + "$binary": { + "base64": "e98auxFmu02h5MfBIARk29MI7hSmvN3F9DaQ0xjqoEM=", + "subType": "00" + } + }, + { + "$binary": { + "base64": "US83krGNov/ezL6IhsY5eEOCxv1xUPDIEL/nmY0IKi0=", + "subType": "00" + } + }, + { + "$binary": { + "base64": "P2Aq5+OHZPG0CWIdmZvWq9c/18ZKVYW3vbxd+WU/TXU=", + "subType": "00" + } + }, + { + "$binary": { + "base64": "8AdPRPnSzcd5uhq4TZfNvNeF0XjLNVwAsJJMTtktw84=", + "subType": "00" + } + }, + { + "$binary": { + "base64": "9O6u/G51I4ZHFLhL4ZLuudbr0s202A2QnPfThmOXPhI=", + "subType": "00" + } + }, + { + "$binary": { + "base64": "N7AjYVyVlv6+lVSTM+cIxRL3SMgs3G5LgxSs+jrgDkI=", + "subType": "00" + } + }, + { + "$binary": { + "base64": "RbGF7dQbPGYQFd9DDO1hPz1UlLOJ77FAC6NsjGwJeos=", + "subType": "00" + } + }, + { + "$binary": { + "base64": "m7srHMgKm6kZwsNx8rc45pmw0/9Qro6xuQ8lZS3+RYk=", + "subType": "00" + } + }, + { + "$binary": { + "base64": "K75CNU3JyKFqZWPiIsVi4+n7DhYmcPl/nEhQ3d88mVI=", + "subType": "00" + } + }, + { + "$binary": { + "base64": "c7bwGpUZc/7JzEnMS7qQ/TPuXZyrmMihFaAV6zIqbZc=", + "subType": "00" + } + }, + { + "$binary": { + "base64": "rDvEdUgEk8u4Srt3ETokWs2FXcnyJaRGQ+NbkFwi2rQ=", + "subType": "00" + } + }, + { + "$binary": { + "base64": "VcdZj9zfveRBRlpCR2OYWau2+GokOFb73TE3gpElNiU=", + "subType": "00" + } + }, + { + "$binary": { + "base64": "eOa9o2xfA6OgkbYUxd6wQJicaeN6guhy2V66W3ALsaA=", + "subType": "00" + } + }, + { + "$binary": { + "base64": "1xGkJh+um70XiRd8lKLDtyHgDqrf7/59Mg7X0+KZh8k=", + "subType": "00" + } + }, + { + "$binary": { + "base64": "OSvllqHxycbcZN4phR6NDujY3ttA59o7nQJ6V9eJpX0=", + "subType": "00" + } + }, + { + "$binary": { + "base64": "ZTX1pyk8Vdw0BSbJx7GeJNcQf3tGKxbrrNSTqBqUWkg=", + "subType": "00" + } + }, + { + "$binary": { + "base64": "cn7V05zb5iXwYrePGMHztC+GRq+Tj8IMpRDraauPhSE=", + "subType": "00" + } + }, + { + "$binary": { + "base64": "E9bV9KyrZxHJSUmMg0HrDK4gGN+75ruelAnrM6hXQgY=", + "subType": "00" + } + }, + { + "$binary": { + "base64": "WrssTNmdgXoTGpbaF0JLRCGH6cDQuz1XEFNTy98nrb0=", + "subType": "00" + } + }, + { + "$binary": { + "base64": "jZmyOJP35dsxQ/OY5U4ISpVRIYr8iedNfcwZiKt29Qc=", + "subType": "00" + } + }, + { + "$binary": { + "base64": "d2mocORMbX9MX+/itAW8r1kxVw2/uii4vzXtc+2CIRQ=", + "subType": "00" + } + }, + { + "$binary": { + "base64": "JBnJy58eRPhDo3DuZvsHbvQDiHXxdtAx1Eif66k5SfA=", + "subType": "00" + } + }, + { + "$binary": { + "base64": "OjbDulC8s62v0pgweBSsQqtJjJBwH5JinfJpj7nVr+A=", + "subType": "00" + } + }, + { + "$binary": { + "base64": "85i7KT2GP9nSda3Gsil5LKubhq0LDtc22pxBxHpR+nE=", + "subType": "00" + } + }, + { + "$binary": { + "base64": "u9Fvsclwrs9lwIcMPV/fMZD7L3d5anSfJQVjQb9mgLg=", + "subType": "00" + } + } + ] + } + ] + } + ] + }, + { + "description": "Query with non-matching $encStrContains", + "operations": [ + { + "name": "insertOne", + "arguments": { + "document": { + "_id": 1, + "encryptedText": "foobar" + } + }, + "object": "coll" + }, + { + "name": "find", + "arguments": { + "filter": { + "$expr": { + "$encStrContains": { + "input": "$encryptedText", + "substring": "blah" + } + } + } + }, + "object": "coll", + "expectResult": [] + } + ] + } + ] +} diff --git a/test/client-side-encryption/spec/unified/QE-Text-substringPreview.json b/test/client-side-encryption/spec/unified/QE-Text-substringPreview.json index 0cbfbbdfc6..1df3170958 100644 --- a/test/client-side-encryption/spec/unified/QE-Text-substringPreview.json +++ b/test/client-side-encryption/spec/unified/QE-Text-substringPreview.json @@ -110,7 +110,7 @@ "$numberLong": "3" }, "strMaxQueryLength": { - "$numberLong": "10" + "$numberLong": "6" }, "strMaxLength": { "$numberLong": "20" @@ -427,90 +427,6 @@ "base64": "u9Fvsclwrs9lwIcMPV/fMZD7L3d5anSfJQVjQb9mgLg=", "subType": "00" } - }, - { - "$binary": { - "base64": "LZ32ttmLJGOIw9oFaUCn3Sx5uHPTYJPSFpeGRWNqlUc=", - "subType": "00" - } - }, - { - "$binary": { - "base64": "mMsZvGEePTqtl0FJAL/jAdyWNQIlpwN61YIlZsSIZ6s=", - "subType": "00" - } - }, - { - "$binary": { - "base64": "XZcu1a/ZGsIzAl3j4MXQlLo4v2p7kvIqRHtIQYFmL6k=", - "subType": "00" - } - }, - { - "$binary": { - "base64": "Zse27LinlYCEnX6iTmJceI33mEJxFb0LdPxp0RiMOaQ=", - "subType": "00" - } - }, - { - "$binary": { - "base64": "vOv2Hgb2/sBpnX9XwFbIN6yDxhjchwlmczUf82W2tp4=", - "subType": "00" - } - }, - { - "$binary": { - "base64": "oQxZ9A6j3x5j6x1Jqw/N9tpP4rfWMjcV3y+a3PkrL7c=", - "subType": "00" - } - }, - { - "$binary": { - "base64": "/D7ew3EijyUnmT22awVFspcuyo3JChJcDeCPwpljzVM=", - "subType": "00" - } - }, - { - "$binary": { - "base64": "BEmmwqyamt9X3bcWDld61P01zquy8fBHAXq3SHAPP0M=", - "subType": "00" - } - }, - { - "$binary": { - "base64": "wygD9/kAo1KsRvtr1v+9/lvqoWdKwgh6gDHvAQfXPPk=", - "subType": "00" - } - }, - { - "$binary": { - "base64": "pRTKgF/uksrF1c1AcfSTY6ZhqBKVud1vIztQ4/36SLs=", - "subType": "00" - } - }, - { - "$binary": { - "base64": "C4iUo8oNJsjJ37BqnBgIgSQpf99X2Bb4W5MZEAmakHU=", - "subType": "00" - } - }, - { - "$binary": { - "base64": "icoE53jIq6Fu/YGKUiSUTYyZ8xdiTQY9jJiGxVJObpw=", - "subType": "00" - } - }, - { - "$binary": { - "base64": "oubCwk0V6G2RFWtcOnYDU4uUBoXBrhBRi4nZgrYj9JY=", - "subType": "00" - } - }, - { - "$binary": { - "base64": "IyqhQ9nGhzEi5YW2W6v1kGU5DY2u2qSqbM/qXdLdWVU=", - "subType": "00" - } } ] } diff --git a/test/client-side-encryption/spec/unified/accessToken-azure.json b/test/client-side-encryption/spec/unified/accessToken-azure.json new file mode 100644 index 0000000000..9e7d68f44b --- /dev/null +++ b/test/client-side-encryption/spec/unified/accessToken-azure.json @@ -0,0 +1,186 @@ +{ + "description": "accessToken-azure", + "schemaVersion": "1.28", + "runOnRequirements": [ + { + "minServerVersion": "4.1.10", + "csfle": { + "minLibmongocryptVersion": "1.6.0" + } + } + ], + "createEntities": [ + { + "client": { + "id": "client", + "autoEncryptOpts": { + "keyVaultNamespace": "keyvault.datakeys", + "kmsProviders": { + "azure": { + "accessToken": { + "$$placeholder": 1 + } + } + } + } + } + }, + { + "database": { + "id": "db", + "client": "client", + "databaseName": "db" + } + }, + { + "collection": { + "id": "coll", + "database": "db", + "collectionName": "coll" + } + }, + { + "clientEncryption": { + "id": "clientEncryption", + "clientEncryptionOpts": { + "keyVaultClient": "client", + "keyVaultNamespace": "keyvault.datakeys", + "kmsProviders": { + "azure": { + "accessToken": { + "$$placeholder": 1 + } + } + } + } + } + } + ], + "initialData": [ + { + "databaseName": "db", + "collectionName": "coll", + "documents": [], + "createOptions": { + "validator": { + "$jsonSchema": { + "properties": { + "secret": { + "encrypt": { + "keyId": [ + { + "$binary": { + "base64": "AZURE+AAAAAAAAAAAAAAAA==", + "subType": "04" + } + } + ], + "bsonType": "string", + "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic" + } + } + }, + "bsonType": "object" + } + } + } + }, + { + "databaseName": "keyvault", + "collectionName": "datakeys", + "documents": [ + { + "_id": { + "$binary": { + "base64": "AZURE+AAAAAAAAAAAAAAAA==", + "subType": "04" + } + }, + "keyAltNames": [ + "my-key" + ], + "keyMaterial": { + "$binary": { + "base64": "Vlza0NjSsxbiJbHUM++3EWyhd5/m4QHv0ZaH87LsljVDltHNZyR9YBFOTDFE1RKeY/uGSW35IdOLVxpHvo1/qBz7E6Iv14obBmniRetWZq0wxerm72LlF+VPTHHmNn1sIv3TY/HsHSx7S1U/ILaKukD7hBKZ5/4A2tPOXtdnTzC4Rpc8bRjaM8heQSNEWbTBPqcQ9xD4YLi+uQlzbLZjQA+Ljr540QJEwa7RGw8J22eo1sb3vSeDAhR24GH6RPJ5v72yElGcOZrKCjxnbd4mrCtSHssfOzCnK2Dw3mHikSLeBFGjnlXydBWiTn2AlhOs+YpXdAJ6Zm3xjkdJOXKytg==", + "subType": "00" + } + }, + "creationDate": { + "$date": { + "$numberLong": "1552949630483" + } + }, + "updateDate": { + "$date": { + "$numberLong": "1552949630483" + } + }, + "status": { + "$numberInt": "0" + }, + "masterKey": { + "provider": "azure", + "keyVaultEndpoint": "drivers-3392-key-vault.vault.azure.net", + "keyName": "drivers-3392-keyname" + } + } + ] + } + ], + "tests": [ + { + "description": "Auto encrypt using access token Azure credentials", + "operations": [ + { + "name": "insertOne", + "arguments": { + "document": { + "_id": 1, + "secret": "string0" + } + }, + "object": "coll" + } + ], + "outcome": [ + { + "documents": [ + { + "_id": 1, + "secret": { + "$binary": { + "base64": "AQGVERPgAAAAAAAAAAAAAAAC5DbBSwPwfSlBrDtRuglvNvCXD1KzDuCKY2P+4bRFtHDjpTOE2XuytPAUaAbXf1orsPq59PVZmsbTZbt2CB8qaQ==", + "subType": "06" + } + } + } + ], + "collectionName": "coll", + "databaseName": "db" + } + ] + }, + { + "description": "Explicit encrypt using access token Azure credentials", + "operations": [ + { + "name": "encrypt", + "object": "clientEncryption", + "arguments": { + "value": "string0", + "opts": { + "keyAltName": "my-key", + "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic" + } + }, + "expectResult": { + "$binary": { + "base64": "AQGVERPgAAAAAAAAAAAAAAAC5DbBSwPwfSlBrDtRuglvNvCXD1KzDuCKY2P+4bRFtHDjpTOE2XuytPAUaAbXf1orsPq59PVZmsbTZbt2CB8qaQ==", + "subType": "06" + } + } + } + ] + } + ] +} diff --git a/test/client-side-encryption/spec/unified/accessToken-gcp.json b/test/client-side-encryption/spec/unified/accessToken-gcp.json new file mode 100644 index 0000000000..f5cf8914f2 --- /dev/null +++ b/test/client-side-encryption/spec/unified/accessToken-gcp.json @@ -0,0 +1,188 @@ +{ + "description": "accessToken-gcp", + "schemaVersion": "1.28", + "runOnRequirements": [ + { + "minServerVersion": "4.1.10", + "csfle": { + "minLibmongocryptVersion": "1.6.0" + } + } + ], + "createEntities": [ + { + "client": { + "id": "client", + "autoEncryptOpts": { + "keyVaultNamespace": "keyvault.datakeys", + "kmsProviders": { + "gcp": { + "accessToken": { + "$$placeholder": 1 + } + } + } + } + } + }, + { + "database": { + "id": "db", + "client": "client", + "databaseName": "db" + } + }, + { + "collection": { + "id": "coll", + "database": "db", + "collectionName": "coll" + } + }, + { + "clientEncryption": { + "id": "clientEncryption", + "clientEncryptionOpts": { + "keyVaultClient": "client", + "keyVaultNamespace": "keyvault.datakeys", + "kmsProviders": { + "gcp": { + "accessToken": { + "$$placeholder": 1 + } + } + } + } + } + } + ], + "initialData": [ + { + "databaseName": "db", + "collectionName": "coll", + "documents": [], + "createOptions": { + "validator": { + "$jsonSchema": { + "properties": { + "secret": { + "encrypt": { + "keyId": [ + { + "$binary": { + "base64": "GCP+AAAAAAAAAAAAAAAAAA==", + "subType": "04" + } + } + ], + "bsonType": "string", + "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic" + } + } + }, + "bsonType": "object" + } + } + } + }, + { + "databaseName": "keyvault", + "collectionName": "datakeys", + "documents": [ + { + "_id": { + "$binary": { + "base64": "GCP+AAAAAAAAAAAAAAAAAA==", + "subType": "04" + } + }, + "keyAltNames": [ + "my-key" + ], + "keyMaterial": { + "$binary": { + "base64": "CiQAIgLj0WyktnB4dfYHo5SLZ41K4ASQrjJUaSzl5vvVH0G12G0SiQEAjlV8XPlbnHDEDFbdTO4QIe8ER2/172U1ouLazG0ysDtFFIlSvWX5ZnZUrRMmp/R2aJkzLXEt/zf8Mn4Lfm+itnjgo5R9K4pmPNvvPKNZX5C16lrPT+aA+rd+zXFSmlMg3i5jnxvTdLHhg3G7Q/Uv1ZIJskKt95bzLoe0tUVzRWMYXLIEcohnQg==", + "subType": "00" + } + }, + "creationDate": { + "$date": { + "$numberLong": "1552949630483" + } + }, + "updateDate": { + "$date": { + "$numberLong": "1552949630483" + } + }, + "status": { + "$numberInt": "0" + }, + "masterKey": { + "provider": "gcp", + "projectId": "devprod-drivers", + "location": "global", + "keyRing": "key-ring-csfle", + "keyName": "key-name-csfle" + } + } + ] + } + ], + "tests": [ + { + "description": "Auto encrypt using access token GCP credentials", + "operations": [ + { + "name": "insertOne", + "arguments": { + "document": { + "_id": 1, + "secret": "string0" + } + }, + "object": "coll" + } + ], + "outcome": [ + { + "documents": [ + { + "_id": 1, + "secret": { + "$binary": { + "base64": "ARgj/gAAAAAAAAAAAAAAAAACwFd+Y5Ojw45GUXNvbcIpN9YkRdoHDHkR4kssdn0tIMKlDQOLFkWFY9X07IRlXsxPD8DcTiKnl6XINK28vhcGlg==", + "subType": "06" + } + } + } + ], + "collectionName": "coll", + "databaseName": "db" + } + ] + }, + { + "description": "Explicit encrypt using access token GCP credentials", + "operations": [ + { + "name": "encrypt", + "object": "clientEncryption", + "arguments": { + "value": "string0", + "opts": { + "keyAltName": "my-key", + "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic" + } + }, + "expectResult": { + "$binary": { + "base64": "ARgj/gAAAAAAAAAAAAAAAAACwFd+Y5Ojw45GUXNvbcIpN9YkRdoHDHkR4kssdn0tIMKlDQOLFkWFY9X07IRlXsxPD8DcTiKnl6XINK28vhcGlg==", + "subType": "06" + } + } + } + ] + } + ] +} diff --git a/test/client-side-encryption/spec/unified/azureKMS.json b/test/client-side-encryption/spec/unified/azureKMS.json index b70959217f..46ded4e787 100644 --- a/test/client-side-encryption/spec/unified/azureKMS.json +++ b/test/client-side-encryption/spec/unified/azureKMS.json @@ -158,7 +158,7 @@ }, "keyMaterial": { "$binary": { - "base64": "n+HWZ0ZSVOYA3cvQgP7inN4JSXfOH85IngmeQxRpQHjCCcqT3IFqEWNlrsVHiz3AELimHhX4HKqOLWMUeSIT6emUDDoQX9BAv8DR1+E1w4nGs/NyEneac78EYFkK3JysrFDOgl2ypCCTKAypkn9CkAx1if4cfgQE93LW4kczcyHdGiH36CIxrCDGv1UzAvERN5Qa47DVwsM6a+hWsF2AAAJVnF0wYLLJU07TuRHdMrrphPWXZsFgyV+lRqJ7DDpReKNO8nMPLV/mHqHBHGPGQiRdb9NoJo8CvokGz4+KE8oLwzKf6V24dtwZmRkrsDV4iOhvROAzz+Euo1ypSkL3mw==", + "base64": "Vlza0NjSsxbiJbHUM++3EWyhd5/m4QHv0ZaH87LsljVDltHNZyR9YBFOTDFE1RKeY/uGSW35IdOLVxpHvo1/qBz7E6Iv14obBmniRetWZq0wxerm72LlF+VPTHHmNn1sIv3TY/HsHSx7S1U/ILaKukD7hBKZ5/4A2tPOXtdnTzC4Rpc8bRjaM8heQSNEWbTBPqcQ9xD4YLi+uQlzbLZjQA+Ljr540QJEwa7RGw8J22eo1sb3vSeDAhR24GH6RPJ5v72yElGcOZrKCjxnbd4mrCtSHssfOzCnK2Dw3mHikSLeBFGjnlXydBWiTn2AlhOs+YpXdAJ6Zm3xjkdJOXKytg==", "subType": "00" } }, @@ -177,8 +177,8 @@ }, "masterKey": { "provider": "azure", - "keyVaultEndpoint": "key-vault-csfle.vault.azure.net", - "keyName": "key-name-csfle" + "keyVaultEndpoint": "drivers-3392-key-vault.vault.azure.net", + "keyName": "drivers-3392-keyname" }, "keyAltNames": [ "altname", diff --git a/test/client-side-encryption/spec/unified/createDataKey.json b/test/client-side-encryption/spec/unified/createDataKey.json index f99fa3dbcf..a7713e5556 100644 --- a/test/client-side-encryption/spec/unified/createDataKey.json +++ b/test/client-side-encryption/spec/unified/createDataKey.json @@ -159,8 +159,8 @@ "kmsProvider": "azure", "opts": { "masterKey": { - "keyVaultEndpoint": "key-vault-csfle.vault.azure.net", - "keyName": "key-name-csfle" + "keyVaultEndpoint": "drivers-3392-key-vault.vault.azure.net", + "keyName": "drivers-3392-keyname" } } }, @@ -197,8 +197,8 @@ }, "masterKey": { "provider": "azure", - "keyVaultEndpoint": "key-vault-csfle.vault.azure.net", - "keyName": "key-name-csfle" + "keyVaultEndpoint": "drivers-3392-key-vault.vault.azure.net", + "keyName": "drivers-3392-keyname" } } ], diff --git a/test/client-side-encryption/spec/unified/namedKMS-createDataKey.json b/test/client-side-encryption/spec/unified/namedKMS-createDataKey.json index 4d75e4cf51..fc2d50cfc4 100644 --- a/test/client-side-encryption/spec/unified/namedKMS-createDataKey.json +++ b/test/client-side-encryption/spec/unified/namedKMS-createDataKey.json @@ -159,8 +159,8 @@ "kmsProvider": "azure:name1", "opts": { "masterKey": { - "keyVaultEndpoint": "key-vault-csfle.vault.azure.net", - "keyName": "key-name-csfle" + "keyVaultEndpoint": "drivers-3392-key-vault.vault.azure.net", + "keyName": "drivers-3392-keyname" } } }, @@ -197,8 +197,8 @@ }, "masterKey": { "provider": "azure:name1", - "keyVaultEndpoint": "key-vault-csfle.vault.azure.net", - "keyName": "key-name-csfle" + "keyVaultEndpoint": "drivers-3392-key-vault.vault.azure.net", + "keyName": "drivers-3392-keyname" } } ], diff --git a/test/client-side-encryption/spec/unified/namedKMS-rewrapManyDataKey.json b/test/client-side-encryption/spec/unified/namedKMS-rewrapManyDataKey.json index b3b9bd2477..dd73cfe630 100644 --- a/test/client-side-encryption/spec/unified/namedKMS-rewrapManyDataKey.json +++ b/test/client-side-encryption/spec/unified/namedKMS-rewrapManyDataKey.json @@ -139,7 +139,7 @@ ], "keyMaterial": { "$binary": { - "base64": "pr01l7qDygUkFE/0peFwpnNlv3iIy8zrQK38Q9i12UCN2jwZHDmfyx8wokiIKMb9kAleeY+vnt3Cf1MKu9kcDmI+KxbNDd+V3ytAAGzOVLDJr77CiWjF9f8ntkXRHrAY9WwnVDANYkDwXlyU0Y2GQFTiW65jiQhUtYLYH63Tk48SsJuQvnWw1Q+PzY8ga+QeVec8wbcThwtm+r2IHsCFnc72Gv73qq7weISw+O4mN08z3wOp5FOS2ZM3MK7tBGmPdBcktW7F8ODGsOQ1FU53OrWUnyX2aTi2ftFFFMWVHqQo7EYuBZHru8RRODNKMyQk0BFfKovAeTAVRv9WH9QU7g==", + "base64": "d8y3DLFGseaTkfoPSjGUkRnCl/bLiq83USDDmKU+d9ZQmvrSPDnF7T4G4g9z2YL/mlNlgjMn/oObkh/OIlDgZLUfSQTTo1U2pOKDG1m/wCi0CaSfyxoWy8mespl9SHmngDauWKeJYs1p8zFrrK/WyzzWTyhkVeSTYmf3Zev4zAO7cTc1NMkvCL7UZQ6ODAAV6KNgEr2iETls00bOG/7KMVWXKmH5+tlmXdplnBohb1w0m+M5LUnSO0t7Q45dgGl4kfp4KMat2d7ooS5sUIDY5ynUpSiRcDGMj4MFt5ACM5XdwRWQNs5D863B1bHeTpLH2fPr1eZTcCprSyPhqOtIQA==", "subType": "00" } }, @@ -156,8 +156,8 @@ "status": 1, "masterKey": { "provider": "azure:name1", - "keyVaultEndpoint": "key-vault-csfle.vault.azure.net", - "keyName": "key-name-csfle" + "keyVaultEndpoint": "drivers-3392-key-vault.vault.azure.net", + "keyName": "drivers-3392-keyname" } }, { @@ -462,8 +462,8 @@ "opts": { "provider": "azure:name1", "masterKey": { - "keyVaultEndpoint": "key-vault-csfle.vault.azure.net", - "keyName": "key-name-csfle" + "keyVaultEndpoint": "drivers-3392-key-vault.vault.azure.net", + "keyName": "drivers-3392-keyname" } } }, @@ -519,8 +519,8 @@ "$set": { "masterKey": { "provider": "azure:name1", - "keyVaultEndpoint": "key-vault-csfle.vault.azure.net", - "keyName": "key-name-csfle" + "keyVaultEndpoint": "drivers-3392-key-vault.vault.azure.net", + "keyName": "drivers-3392-keyname" }, "keyMaterial": { "$$type": "binData" @@ -547,8 +547,8 @@ "$set": { "masterKey": { "provider": "azure:name1", - "keyVaultEndpoint": "key-vault-csfle.vault.azure.net", - "keyName": "key-name-csfle" + "keyVaultEndpoint": "drivers-3392-key-vault.vault.azure.net", + "keyName": "drivers-3392-keyname" }, "keyMaterial": { "$$type": "binData" @@ -575,8 +575,8 @@ "$set": { "masterKey": { "provider": "azure:name1", - "keyVaultEndpoint": "key-vault-csfle.vault.azure.net", - "keyName": "key-name-csfle" + "keyVaultEndpoint": "drivers-3392-key-vault.vault.azure.net", + "keyName": "drivers-3392-keyname" }, "keyMaterial": { "$$type": "binData" @@ -603,8 +603,8 @@ "$set": { "masterKey": { "provider": "azure:name1", - "keyVaultEndpoint": "key-vault-csfle.vault.azure.net", - "keyName": "key-name-csfle" + "keyVaultEndpoint": "drivers-3392-key-vault.vault.azure.net", + "keyName": "drivers-3392-keyname" }, "keyMaterial": { "$$type": "binData" diff --git a/test/client-side-encryption/spec/unified/rewrapManyDataKey.json b/test/client-side-encryption/spec/unified/rewrapManyDataKey.json index 8803491dbe..7a04919a12 100644 --- a/test/client-side-encryption/spec/unified/rewrapManyDataKey.json +++ b/test/client-side-encryption/spec/unified/rewrapManyDataKey.json @@ -128,7 +128,7 @@ ], "keyMaterial": { "$binary": { - "base64": "pr01l7qDygUkFE/0peFwpnNlv3iIy8zrQK38Q9i12UCN2jwZHDmfyx8wokiIKMb9kAleeY+vnt3Cf1MKu9kcDmI+KxbNDd+V3ytAAGzOVLDJr77CiWjF9f8ntkXRHrAY9WwnVDANYkDwXlyU0Y2GQFTiW65jiQhUtYLYH63Tk48SsJuQvnWw1Q+PzY8ga+QeVec8wbcThwtm+r2IHsCFnc72Gv73qq7weISw+O4mN08z3wOp5FOS2ZM3MK7tBGmPdBcktW7F8ODGsOQ1FU53OrWUnyX2aTi2ftFFFMWVHqQo7EYuBZHru8RRODNKMyQk0BFfKovAeTAVRv9WH9QU7g==", + "base64": "d8y3DLFGseaTkfoPSjGUkRnCl/bLiq83USDDmKU+d9ZQmvrSPDnF7T4G4g9z2YL/mlNlgjMn/oObkh/OIlDgZLUfSQTTo1U2pOKDG1m/wCi0CaSfyxoWy8mespl9SHmngDauWKeJYs1p8zFrrK/WyzzWTyhkVeSTYmf3Zev4zAO7cTc1NMkvCL7UZQ6ODAAV6KNgEr2iETls00bOG/7KMVWXKmH5+tlmXdplnBohb1w0m+M5LUnSO0t7Q45dgGl4kfp4KMat2d7ooS5sUIDY5ynUpSiRcDGMj4MFt5ACM5XdwRWQNs5D863B1bHeTpLH2fPr1eZTcCprSyPhqOtIQA==", "subType": "00" } }, @@ -145,8 +145,8 @@ "status": 1, "masterKey": { "provider": "azure", - "keyVaultEndpoint": "key-vault-csfle.vault.azure.net", - "keyName": "key-name-csfle" + "keyVaultEndpoint": "drivers-3392-key-vault.vault.azure.net", + "keyName": "drivers-3392-keyname" } }, { @@ -552,8 +552,8 @@ "opts": { "provider": "azure", "masterKey": { - "keyVaultEndpoint": "key-vault-csfle.vault.azure.net", - "keyName": "key-name-csfle" + "keyVaultEndpoint": "drivers-3392-key-vault.vault.azure.net", + "keyName": "drivers-3392-keyname" } } }, @@ -609,8 +609,8 @@ "$set": { "masterKey": { "provider": "azure", - "keyVaultEndpoint": "key-vault-csfle.vault.azure.net", - "keyName": "key-name-csfle" + "keyVaultEndpoint": "drivers-3392-key-vault.vault.azure.net", + "keyName": "drivers-3392-keyname" }, "keyMaterial": { "$$type": "binData" @@ -637,8 +637,8 @@ "$set": { "masterKey": { "provider": "azure", - "keyVaultEndpoint": "key-vault-csfle.vault.azure.net", - "keyName": "key-name-csfle" + "keyVaultEndpoint": "drivers-3392-key-vault.vault.azure.net", + "keyName": "drivers-3392-keyname" }, "keyMaterial": { "$$type": "binData" @@ -665,8 +665,8 @@ "$set": { "masterKey": { "provider": "azure", - "keyVaultEndpoint": "key-vault-csfle.vault.azure.net", - "keyName": "key-name-csfle" + "keyVaultEndpoint": "drivers-3392-key-vault.vault.azure.net", + "keyName": "drivers-3392-keyname" }, "keyMaterial": { "$$type": "binData" @@ -693,8 +693,8 @@ "$set": { "masterKey": { "provider": "azure", - "keyVaultEndpoint": "key-vault-csfle.vault.azure.net", - "keyName": "key-name-csfle" + "keyVaultEndpoint": "drivers-3392-key-vault.vault.azure.net", + "keyName": "drivers-3392-keyname" }, "keyMaterial": { "$$type": "binData" @@ -721,8 +721,8 @@ "$set": { "masterKey": { "provider": "azure", - "keyVaultEndpoint": "key-vault-csfle.vault.azure.net", - "keyName": "key-name-csfle" + "keyVaultEndpoint": "drivers-3392-key-vault.vault.azure.net", + "keyName": "drivers-3392-keyname" }, "keyMaterial": { "$$type": "binData" @@ -1668,8 +1668,8 @@ }, "masterKey": { "provider": "azure", - "keyVaultEndpoint": "key-vault-csfle.vault.azure.net", - "keyName": "key-name-csfle" + "keyVaultEndpoint": "drivers-3392-key-vault.vault.azure.net", + "keyName": "drivers-3392-keyname" } }, { diff --git a/test/csot/override-operation-timeoutMS.json b/test/csot/override-operation-timeoutMS.json index f33f876137..30b550089f 100644 --- a/test/csot/override-operation-timeoutMS.json +++ b/test/csot/override-operation-timeoutMS.json @@ -269,6 +269,21 @@ }, { "description": "timeoutMS can be configured for an operation - createChangeStream on client", + "runOnRequirements": [ + { + "minServerVersion": "4.4", + "topologies": [ + "replicaset" + ] + }, + { + "minServerVersion": "4.4", + "maxServerVersion": "8.99", + "topologies": [ + "sharded" + ] + } + ], "operations": [ { "name": "failPoint", @@ -824,6 +839,21 @@ }, { "description": "timeoutMS can be configured for an operation - createChangeStream on database", + "runOnRequirements": [ + { + "minServerVersion": "4.4", + "topologies": [ + "replicaset" + ] + }, + { + "minServerVersion": "4.4", + "maxServerVersion": "8.99", + "topologies": [ + "sharded" + ] + } + ], "operations": [ { "name": "failPoint", @@ -1890,6 +1920,21 @@ }, { "description": "timeoutMS can be configured for an operation - createChangeStream on collection", + "runOnRequirements": [ + { + "minServerVersion": "4.4", + "topologies": [ + "replicaset" + ] + }, + { + "minServerVersion": "4.4", + "maxServerVersion": "8.99", + "topologies": [ + "sharded" + ] + } + ], "operations": [ { "name": "failPoint", diff --git a/test/csot/retryability-legacy-timeouts.json b/test/csot/retryability-legacy-timeouts.json index aded781aee..c912855985 100644 --- a/test/csot/retryability-legacy-timeouts.json +++ b/test/csot/retryability-legacy-timeouts.json @@ -1398,6 +1398,21 @@ }, { "description": "operation succeeds after one socket timeout - createChangeStream on client", + "runOnRequirements": [ + { + "minServerVersion": "4.4", + "topologies": [ + "replicaset" + ] + }, + { + "minServerVersion": "4.4", + "maxServerVersion": "8.99", + "topologies": [ + "sharded" + ] + } + ], "operations": [ { "name": "failPoint", @@ -1880,6 +1895,21 @@ }, { "description": "operation succeeds after one socket timeout - createChangeStream on database", + "runOnRequirements": [ + { + "minServerVersion": "4.4", + "topologies": [ + "replicaset" + ] + }, + { + "minServerVersion": "4.4", + "maxServerVersion": "8.99", + "topologies": [ + "sharded" + ] + } + ], "operations": [ { "name": "failPoint", @@ -2923,6 +2953,21 @@ }, { "description": "operation succeeds after one socket timeout - createChangeStream on collection", + "runOnRequirements": [ + { + "minServerVersion": "4.4", + "topologies": [ + "replicaset" + ] + }, + { + "minServerVersion": "4.4", + "maxServerVersion": "8.99", + "topologies": [ + "sharded" + ] + } + ], "operations": [ { "name": "failPoint", diff --git a/test/csot/retryability-timeoutMS.json b/test/csot/retryability-timeoutMS.json index 5a0c9f3605..8fb88cfd55 100644 --- a/test/csot/retryability-timeoutMS.json +++ b/test/csot/retryability-timeoutMS.json @@ -2626,7 +2626,17 @@ "description": "operation is retried multiple times for non-zero timeoutMS - createChangeStream on client", "runOnRequirements": [ { - "minServerVersion": "4.3.1" + "minServerVersion": "4.3.1", + "topologies": [ + "replicaset" + ] + }, + { + "minServerVersion": "4.3.1", + "maxServerVersion": "8.99", + "topologies": [ + "sharded" + ] } ], "operations": [ @@ -3531,7 +3541,17 @@ "description": "operation is retried multiple times for non-zero timeoutMS - createChangeStream on database", "runOnRequirements": [ { - "minServerVersion": "4.3.1" + "minServerVersion": "4.3.1", + "topologies": [ + "replicaset" + ] + }, + { + "minServerVersion": "4.3.1", + "maxServerVersion": "8.99", + "topologies": [ + "sharded" + ] } ], "operations": [ @@ -5513,7 +5533,17 @@ "description": "operation is retried multiple times for non-zero timeoutMS - createChangeStream on collection", "runOnRequirements": [ { - "minServerVersion": "4.3.1" + "minServerVersion": "4.3.1", + "topologies": [ + "replicaset" + ] + }, + { + "minServerVersion": "4.3.1", + "maxServerVersion": "8.99", + "topologies": [ + "sharded" + ] } ], "operations": [ diff --git a/test/unified-test-format/invalid/clientEncryptionOpts-kmsProviders-azure-accessToken-type.json b/test/unified-test-format/invalid/clientEncryptionOpts-kmsProviders-azure-accessToken-type.json new file mode 100644 index 0000000000..8fe5c150a1 --- /dev/null +++ b/test/unified-test-format/invalid/clientEncryptionOpts-kmsProviders-azure-accessToken-type.json @@ -0,0 +1,31 @@ +{ + "description": "clientEncryptionOpts-kmsProviders-azure-accessToken-type", + "schemaVersion": "1.28", + "createEntities": [ + { + "client": { + "id": "client0" + } + }, + { + "clientEncryption": { + "id": "clientEncryption0", + "clientEncryptionOpts": { + "keyVaultClient": "client0", + "keyVaultNamespace": "keyvault.datakeys", + "kmsProviders": { + "azure": { + "accessToken": 0 + } + } + } + } + } + ], + "tests": [ + { + "description": "", + "operations": [] + } + ] +} diff --git a/test/unified-test-format/invalid/clientEncryptionOpts-kmsProviders-gcp-accessToken-type.json b/test/unified-test-format/invalid/clientEncryptionOpts-kmsProviders-gcp-accessToken-type.json new file mode 100644 index 0000000000..2284e26cb6 --- /dev/null +++ b/test/unified-test-format/invalid/clientEncryptionOpts-kmsProviders-gcp-accessToken-type.json @@ -0,0 +1,31 @@ +{ + "description": "clientEncryptionOpts-kmsProviders-gcp-accessToken-type", + "schemaVersion": "1.28", + "createEntities": [ + { + "client": { + "id": "client0" + } + }, + { + "clientEncryption": { + "id": "clientEncryption0", + "clientEncryptionOpts": { + "keyVaultClient": "client0", + "keyVaultNamespace": "keyvault.datakeys", + "kmsProviders": { + "gcp": { + "accessToken": 0 + } + } + } + } + } + ], + "tests": [ + { + "description": "", + "operations": [] + } + ] +} diff --git a/test/unified_format.py b/test/unified_format.py index b1595d924a..648a0387cc 100644 --- a/test/unified_format.py +++ b/test/unified_format.py @@ -476,7 +476,7 @@ class UnifiedSpecTestMixinV1(IntegrationTest): a class attribute ``TEST_SPEC``. """ - SCHEMA_VERSION = Version.from_string("1.26") + SCHEMA_VERSION = Version.from_string("1.28") RUN_ON_LOAD_BALANCER = True TEST_SPEC: Any TEST_PATH = "" # This gets filled in by generate_test_classes