diff options
author | Shreyas Kalyan <shreyas.kalyan@mongodb.com> | 2020-01-03 21:12:40 +0000 |
---|---|---|
committer | evergreen <evergreen@mongodb.com> | 2020-01-03 21:12:40 +0000 |
commit | f9af7e53f24ac8d8bd16b788d871b263ae1612a9 (patch) | |
tree | d13b6388a3c4ce1a6e04605b265308ddde8627a0 | |
parent | 54f2a28b008bacaefd0e8d41abb2c318a9ae646c (diff) | |
download | mongo-f9af7e53f24ac8d8bd16b788d871b263ae1612a9.tar.gz |
SERVER-44044 Remove unused second parameter from KeyVault.createDataKey()
(cherry picked from commit 05aec2872159cf583fe8655ca55f4bf70268efcf)
-rw-r--r-- | jstests/client_encrypt/fle_keys.js | 4 | ||||
-rw-r--r-- | src/mongo/shell/keyvault.js | 13 |
2 files changed, 16 insertions, 1 deletions
diff --git a/jstests/client_encrypt/fle_keys.js b/jstests/client_encrypt/fle_keys.js index d7039e2dfaf..3b21ef89fc2 100644 --- a/jstests/client_encrypt/fle_keys.js +++ b/jstests/client_encrypt/fle_keys.js @@ -61,6 +61,10 @@ assert.eq(1, keyVault.getKeys().itcount()); result = keyVault.addKeyAlternateName(keyId, [2]); assert.eq("TypeError: key alternate name cannot be object or array type.", result); +// Test create key with no CMK +result = keyVault.createKey("aws", ["altName"]); +assert.eq("ValueError: customerMasterKey must be defined if kmsProvider is not local.", result); + keyVault.removeKeyAlternateName(keyId, "mongoKey2"); assert.eq(1, keyVault.getKey(keyId).toArray()[0].keyAltNames.length); diff --git a/src/mongo/shell/keyvault.js b/src/mongo/shell/keyvault.js index 959a4e8c7f4..3194279cfa4 100644 --- a/src/mongo/shell/keyvault.js +++ b/src/mongo/shell/keyvault.js @@ -15,7 +15,18 @@ class KeyVault { {unique: true, partialFilterExpression: {keyAltNames: {$exists: true}}}); } - createKey(kmsProvider, customerMasterKey, keyAltNames = undefined) { + createKey(kmsProvider, param2 = undefined, param3 = undefined) { + if (Array.isArray(param2) && param3 === undefined) { + if (kmsProvider !== "local") { + return "ValueError: customerMasterKey must be defined if kmsProvider is not local."; + } + return this._createKey(kmsProvider, '', param2); + } + + return this._createKey(kmsProvider, param2, param3); + } + + _createKey(kmsProvider, customerMasterKey, keyAltNames) { if (typeof kmsProvider !== "string") { return "TypeError: kmsProvider must be of String type."; } |