1{
2 "runOn": [
3 {
4 "minServerVersion": "4.1.10"
5 }
6 ],
7 "database_name": "default",
8 "collection_name": "default",
9 "data": [
10 {
11 "_id": 1,
12 "encrypted_string": {
13 "$binary": {
14 "base64": "AQAAAAAAAAAAAAAAAAAAAAACDdw4KFz3ZLquhsbt7RmDjD0N67n0uSXx7IGnQNCLeIKvot6s/ouI21Eo84IOtb6lhwUNPlSEBNY0/hbszWAKJg==",
15 "subType": "00"
16 }
17 }
18 },
19 {
20 "_id": 2,
21 "encrypted_string": {
22 "$binary": {
23 "base64": "AQ==",
24 "subType": "06"
25 }
26 }
27 },
28 {
29 "_id": 3,
30 "encrypted_string": {
31 "$binary": {
32 "base64": "AQAAa2V2aW4gYWxiZXJ0c29uCg==",
33 "subType": "06"
34 }
35 }
36 }
37 ],
38 "key_vault_data": [
39 {
40 "status": 1,
41 "_id": {
42 "$binary": {
43 "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
44 "subType": "04"
45 }
46 },
47 "masterKey": {
48 "provider": "aws",
49 "key": "arn:aws:kms:us-east-1:579766882180:key/89fcc2c4-08b0-4bd9-9f25-e30687b580d0",
50 "region": "us-east-1"
51 },
52 "updateDate": {
53 "$date": {
54 "$numberLong": "1552949630483"
55 }
56 },
57 "keyMaterial": {
58 "$binary": {
59 "base64": "AQICAHhQNmWG2CzOm1dq3kWLM+iDUZhEqnhJwH9wZVpuZ94A8gEqnsxXlR51T5EbEVezUqqKAAAAwjCBvwYJKoZIhvcNAQcGoIGxMIGuAgEAMIGoBgkqhkiG9w0BBwEwHgYJYIZIAWUDBAEuMBEEDHa4jo6yp0Z18KgbUgIBEIB74sKxWtV8/YHje5lv5THTl0HIbhSwM6EqRlmBiFFatmEWaeMk4tO4xBX65eq670I5TWPSLMzpp8ncGHMmvHqRajNBnmFtbYxN3E3/WjxmdbOOe+OXpnGJPcGsftc7cB2shRfA4lICPnE26+oVNXT6p0Lo20nY5XC7jyCO",
60 "subType": "00"
61 }
62 },
63 "creationDate": {
64 "$date": {
65 "$numberLong": "1552949630483"
66 }
67 },
68 "keyAltNames": [
69 "altname",
70 "another_altname"
71 ]
72 }
73 ],
74 "tests": [
75 {
76 "description": "Wrong subtype",
77 "clientOptions": {
78 "autoEncryptOpts": {
79 "schemaMap": {
80 "default.default": {
81 "properties": {
82 "encrypted_w_altname": {
83 "encrypt": {
84 "keyId": "/altname",
85 "bsonType": "string",
86 "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Random"
87 }
88 },
89 "encrypted_string": {
90 "encrypt": {
91 "keyId": [
92 {
93 "$binary": {
94 "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
95 "subType": "04"
96 }
97 }
98 ],
99 "bsonType": "string",
100 "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic"
101 }
102 },
103 "random": {
104 "encrypt": {
105 "keyId": [
106 {
107 "$binary": {
108 "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
109 "subType": "04"
110 }
111 }
112 ],
113 "bsonType": "string",
114 "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Random"
115 }
116 },
117 "encrypted_string_equivalent": {
118 "encrypt": {
119 "keyId": [
120 {
121 "$binary": {
122 "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
123 "subType": "04"
124 }
125 }
126 ],
127 "bsonType": "string",
128 "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic"
129 }
130 }
131 },
132 "bsonType": "object"
133 }
134 },
135 "kmsProviders": {
136 "aws": {}
137 }
138 }
139 },
140 "operations": [
141 {
142 "name": "find",
143 "arguments": {
144 "filter": {
145 "_id": 1
146 }
147 },
148 "result": [
149 {
150 "_id": 1,
151 "encrypted_string": {
152 "$binary": {
153 "base64": "AQAAAAAAAAAAAAAAAAAAAAACDdw4KFz3ZLquhsbt7RmDjD0N67n0uSXx7IGnQNCLeIKvot6s/ouI21Eo84IOtb6lhwUNPlSEBNY0/hbszWAKJg==",
154 "subType": "00"
155 }
156 }
157 }
158 ]
159 }
160 ]
161 },
162 {
163 "description": "Empty data",
164 "clientOptions": {
165 "autoEncryptOpts": {
166 "schemaMap": {
167 "default.default": {
168 "properties": {
169 "encrypted_w_altname": {
170 "encrypt": {
171 "keyId": "/altname",
172 "bsonType": "string",
173 "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Random"
174 }
175 },
176 "encrypted_string": {
177 "encrypt": {
178 "keyId": [
179 {
180 "$binary": {
181 "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
182 "subType": "04"
183 }
184 }
185 ],
186 "bsonType": "string",
187 "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic"
188 }
189 },
190 "random": {
191 "encrypt": {
192 "keyId": [
193 {
194 "$binary": {
195 "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
196 "subType": "04"
197 }
198 }
199 ],
200 "bsonType": "string",
201 "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Random"
202 }
203 },
204 "encrypted_string_equivalent": {
205 "encrypt": {
206 "keyId": [
207 {
208 "$binary": {
209 "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
210 "subType": "04"
211 }
212 }
213 ],
214 "bsonType": "string",
215 "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic"
216 }
217 }
218 },
219 "bsonType": "object"
220 }
221 },
222 "kmsProviders": {
223 "aws": {}
224 }
225 }
226 },
227 "operations": [
228 {
229 "name": "find",
230 "arguments": {
231 "filter": {
232 "_id": 2
233 }
234 },
235 "result": {
236 "errorContains": "malformed ciphertext"
237 }
238 }
239 ]
240 },
241 {
242 "description": "Malformed data",
243 "clientOptions": {
244 "autoEncryptOpts": {
245 "schemaMap": {
246 "default.default": {
247 "properties": {
248 "encrypted_w_altname": {
249 "encrypt": {
250 "keyId": "/altname",
251 "bsonType": "string",
252 "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Random"
253 }
254 },
255 "encrypted_string": {
256 "encrypt": {
257 "keyId": [
258 {
259 "$binary": {
260 "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
261 "subType": "04"
262 }
263 }
264 ],
265 "bsonType": "string",
266 "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic"
267 }
268 },
269 "random": {
270 "encrypt": {
271 "keyId": [
272 {
273 "$binary": {
274 "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
275 "subType": "04"
276 }
277 }
278 ],
279 "bsonType": "string",
280 "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Random"
281 }
282 },
283 "encrypted_string_equivalent": {
284 "encrypt": {
285 "keyId": [
286 {
287 "$binary": {
288 "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
289 "subType": "04"
290 }
291 }
292 ],
293 "bsonType": "string",
294 "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic"
295 }
296 }
297 },
298 "bsonType": "object"
299 }
300 },
301 "kmsProviders": {
302 "aws": {}
303 }
304 }
305 },
306 "operations": [
307 {
308 "name": "find",
309 "arguments": {
310 "filter": {
311 "_id": 3
312 }
313 },
314 "result": {
315 "errorContains": "not all keys requested were satisfied"
316 }
317 }
318 ]
319 }
320 ]
321}
View as plain text