...

Text file src/go.mongodb.org/mongo-driver/testdata/client-side-encryption/legacy/types.json

Documentation: go.mongodb.org/mongo-driver/testdata/client-side-encryption/legacy

     1{
     2  "runOn": [
     3    {
     4      "minServerVersion": "4.1.10"
     5    }
     6  ],
     7  "database_name": "default",
     8  "collection_name": "default",
     9  "data": [],
    10  "json_schema": {},
    11  "key_vault_data": [
    12    {
    13      "status": 1,
    14      "_id": {
    15        "$binary": {
    16          "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
    17          "subType": "04"
    18        }
    19      },
    20      "masterKey": {
    21        "provider": "aws",
    22        "key": "arn:aws:kms:us-east-1:579766882180:key/89fcc2c4-08b0-4bd9-9f25-e30687b580d0",
    23        "region": "us-east-1"
    24      },
    25      "updateDate": {
    26        "$date": {
    27          "$numberLong": "1552949630483"
    28        }
    29      },
    30      "keyMaterial": {
    31        "$binary": {
    32          "base64": "AQICAHhQNmWG2CzOm1dq3kWLM+iDUZhEqnhJwH9wZVpuZ94A8gEqnsxXlR51T5EbEVezUqqKAAAAwjCBvwYJKoZIhvcNAQcGoIGxMIGuAgEAMIGoBgkqhkiG9w0BBwEwHgYJYIZIAWUDBAEuMBEEDHa4jo6yp0Z18KgbUgIBEIB74sKxWtV8/YHje5lv5THTl0HIbhSwM6EqRlmBiFFatmEWaeMk4tO4xBX65eq670I5TWPSLMzpp8ncGHMmvHqRajNBnmFtbYxN3E3/WjxmdbOOe+OXpnGJPcGsftc7cB2shRfA4lICPnE26+oVNXT6p0Lo20nY5XC7jyCO",
    33          "subType": "00"
    34        }
    35      },
    36      "creationDate": {
    37        "$date": {
    38          "$numberLong": "1552949630483"
    39        }
    40      },
    41      "keyAltNames": [
    42        "altname",
    43        "another_altname"
    44      ]
    45    }
    46  ],
    47  "tests": [
    48    {
    49      "description": "type=objectId",
    50      "clientOptions": {
    51        "autoEncryptOpts": {
    52          "schemaMap": {
    53            "default.default": {
    54              "properties": {
    55                "encrypted_objectId": {
    56                  "encrypt": {
    57                    "keyId": [
    58                      {
    59                        "$binary": {
    60                          "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
    61                          "subType": "04"
    62                        }
    63                      }
    64                    ],
    65                    "bsonType": "objectId",
    66                    "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic"
    67                  }
    68                }
    69              },
    70              "bsonType": "object"
    71            }
    72          },
    73          "kmsProviders": {
    74            "aws": {}
    75          }
    76        }
    77      },
    78      "operations": [
    79        {
    80          "name": "insertOne",
    81          "arguments": {
    82            "document": {
    83              "_id": 1,
    84              "encrypted_objectId": {
    85                "$oid": "AAAAAAAAAAAAAAAAAAAAAAAA"
    86              }
    87            }
    88          }
    89        },
    90        {
    91          "name": "findOne",
    92          "arguments": {
    93            "filter": {
    94              "_id": 1
    95            }
    96          },
    97          "result": {
    98            "_id": 1,
    99            "encrypted_objectId": {
   100              "$oid": "AAAAAAAAAAAAAAAAAAAAAAAA"
   101            }
   102          }
   103        }
   104      ],
   105      "expectations": [
   106        {
   107          "command_started_event": {
   108            "command": {
   109              "find": "datakeys",
   110              "filter": {
   111                "$or": [
   112                  {
   113                    "_id": {
   114                      "$in": [
   115                        {
   116                          "$binary": {
   117                            "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
   118                            "subType": "04"
   119                          }
   120                        }
   121                      ]
   122                    }
   123                  },
   124                  {
   125                    "keyAltNames": {
   126                      "$in": []
   127                    }
   128                  }
   129                ]
   130              },
   131              "$db": "keyvault",
   132              "readConcern": {
   133                "level": "majority"
   134              }
   135            },
   136            "command_name": "find"
   137          }
   138        },
   139        {
   140          "command_started_event": {
   141            "command": {
   142              "insert": "default",
   143              "documents": [
   144                {
   145                  "_id": 1,
   146                  "encrypted_objectId": {
   147                    "$binary": {
   148                      "base64": "AQAAAAAAAAAAAAAAAAAAAAAHmkTPqvzfHMWpvS1mEsrjOxVQ2dyihEgIFWD5E0eNEsiMBQsC0GuvjdqYRL5DHLFI1vKuGek7EYYp0Qyii/tHqA==",
   149                      "subType": "06"
   150                    }
   151                  }
   152                }
   153              ],
   154              "ordered": true
   155            },
   156            "command_name": "insert"
   157          }
   158        },
   159        {
   160          "command_started_event": {
   161            "command": {
   162              "find": "default",
   163              "filter": {
   164                "_id": 1
   165              }
   166            },
   167            "command_name": "find"
   168          }
   169        }
   170      ],
   171      "outcome": {
   172        "collection": {
   173          "data": [
   174            {
   175              "_id": 1,
   176              "encrypted_objectId": {
   177                "$binary": {
   178                  "base64": "AQAAAAAAAAAAAAAAAAAAAAAHmkTPqvzfHMWpvS1mEsrjOxVQ2dyihEgIFWD5E0eNEsiMBQsC0GuvjdqYRL5DHLFI1vKuGek7EYYp0Qyii/tHqA==",
   179                  "subType": "06"
   180                }
   181              }
   182            }
   183          ]
   184        }
   185      }
   186    },
   187    {
   188      "description": "type=symbol",
   189      "clientOptions": {
   190        "autoEncryptOpts": {
   191          "schemaMap": {
   192            "default.default": {
   193              "properties": {
   194                "encrypted_symbol": {
   195                  "encrypt": {
   196                    "keyId": [
   197                      {
   198                        "$binary": {
   199                          "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
   200                          "subType": "04"
   201                        }
   202                      }
   203                    ],
   204                    "bsonType": "symbol",
   205                    "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic"
   206                  }
   207                }
   208              },
   209              "bsonType": "object"
   210            }
   211          },
   212          "kmsProviders": {
   213            "aws": {}
   214          }
   215        }
   216      },
   217      "operations": [
   218        {
   219          "name": "insertOne",
   220          "arguments": {
   221            "document": {
   222              "_id": 1,
   223              "encrypted_symbol": {
   224                "$symbol": "test"
   225              }
   226            }
   227          }
   228        },
   229        {
   230          "name": "findOne",
   231          "arguments": {
   232            "filter": {
   233              "_id": 1
   234            }
   235          },
   236          "result": {
   237            "_id": 1,
   238            "encrypted_symbol": {
   239              "$symbol": "test"
   240            }
   241          }
   242        }
   243      ],
   244      "expectations": [
   245        {
   246          "command_started_event": {
   247            "command": {
   248              "find": "datakeys",
   249              "filter": {
   250                "$or": [
   251                  {
   252                    "_id": {
   253                      "$in": [
   254                        {
   255                          "$binary": {
   256                            "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
   257                            "subType": "04"
   258                          }
   259                        }
   260                      ]
   261                    }
   262                  },
   263                  {
   264                    "keyAltNames": {
   265                      "$in": []
   266                    }
   267                  }
   268                ]
   269              },
   270              "$db": "keyvault",
   271              "readConcern": {
   272                "level": "majority"
   273              }
   274            },
   275            "command_name": "find"
   276          }
   277        },
   278        {
   279          "command_started_event": {
   280            "command": {
   281              "insert": "default",
   282              "documents": [
   283                {
   284                  "_id": 1,
   285                  "encrypted_symbol": {
   286                    "$binary": {
   287                      "base64": "AQAAAAAAAAAAAAAAAAAAAAAOOmvDmWjcuKsSCO7U/7t9HJ8eI73B6wduyMbdkvn7n7V4uTJes/j+BTtneSdyG2JHKHGkevWAJSIU2XoO66BSXw==",
   288                      "subType": "06"
   289                    }
   290                  }
   291                }
   292              ],
   293              "ordered": true
   294            },
   295            "command_name": "insert"
   296          }
   297        },
   298        {
   299          "command_started_event": {
   300            "command": {
   301              "find": "default",
   302              "filter": {
   303                "_id": 1
   304              }
   305            },
   306            "command_name": "find"
   307          }
   308        }
   309      ],
   310      "outcome": {
   311        "collection": {
   312          "data": [
   313            {
   314              "_id": 1,
   315              "encrypted_symbol": {
   316                "$binary": {
   317                  "base64": "AQAAAAAAAAAAAAAAAAAAAAAOOmvDmWjcuKsSCO7U/7t9HJ8eI73B6wduyMbdkvn7n7V4uTJes/j+BTtneSdyG2JHKHGkevWAJSIU2XoO66BSXw==",
   318                  "subType": "06"
   319                }
   320              }
   321            }
   322          ]
   323        }
   324      }
   325    },
   326    {
   327      "description": "type=int",
   328      "clientOptions": {
   329        "autoEncryptOpts": {
   330          "schemaMap": {
   331            "default.default": {
   332              "properties": {
   333                "encrypted_int": {
   334                  "encrypt": {
   335                    "keyId": [
   336                      {
   337                        "$binary": {
   338                          "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
   339                          "subType": "04"
   340                        }
   341                      }
   342                    ],
   343                    "bsonType": "int",
   344                    "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic"
   345                  }
   346                }
   347              },
   348              "bsonType": "object"
   349            }
   350          },
   351          "kmsProviders": {
   352            "aws": {}
   353          }
   354        }
   355      },
   356      "operations": [
   357        {
   358          "name": "insertOne",
   359          "arguments": {
   360            "document": {
   361              "_id": 1,
   362              "encrypted_int": {
   363                "$numberInt": "123"
   364              }
   365            }
   366          }
   367        },
   368        {
   369          "name": "findOne",
   370          "arguments": {
   371            "filter": {
   372              "_id": 1
   373            }
   374          },
   375          "result": {
   376            "_id": 1,
   377            "encrypted_int": {
   378              "$numberInt": "123"
   379            }
   380          }
   381        }
   382      ],
   383      "expectations": [
   384        {
   385          "command_started_event": {
   386            "command": {
   387              "find": "datakeys",
   388              "filter": {
   389                "$or": [
   390                  {
   391                    "_id": {
   392                      "$in": [
   393                        {
   394                          "$binary": {
   395                            "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
   396                            "subType": "04"
   397                          }
   398                        }
   399                      ]
   400                    }
   401                  },
   402                  {
   403                    "keyAltNames": {
   404                      "$in": []
   405                    }
   406                  }
   407                ]
   408              },
   409              "$db": "keyvault",
   410              "readConcern": {
   411                "level": "majority"
   412              }
   413            },
   414            "command_name": "find"
   415          }
   416        },
   417        {
   418          "command_started_event": {
   419            "command": {
   420              "insert": "default",
   421              "documents": [
   422                {
   423                  "_id": 1,
   424                  "encrypted_int": {
   425                    "$binary": {
   426                      "base64": "AQAAAAAAAAAAAAAAAAAAAAAQPNXJVXMEjGZnftMuf2INKufXCtQIRHdw5wTgn6QYt3ejcoAXyiwI4XIUizkpsob494qpt2in4tWeiO7b9zkA8Q==",
   427                      "subType": "06"
   428                    }
   429                  }
   430                }
   431              ],
   432              "ordered": true
   433            },
   434            "command_name": "insert"
   435          }
   436        },
   437        {
   438          "command_started_event": {
   439            "command": {
   440              "find": "default",
   441              "filter": {
   442                "_id": 1
   443              }
   444            },
   445            "command_name": "find"
   446          }
   447        }
   448      ],
   449      "outcome": {
   450        "collection": {
   451          "data": [
   452            {
   453              "_id": 1,
   454              "encrypted_int": {
   455                "$binary": {
   456                  "base64": "AQAAAAAAAAAAAAAAAAAAAAAQPNXJVXMEjGZnftMuf2INKufXCtQIRHdw5wTgn6QYt3ejcoAXyiwI4XIUizkpsob494qpt2in4tWeiO7b9zkA8Q==",
   457                  "subType": "06"
   458                }
   459              }
   460            }
   461          ]
   462        }
   463      }
   464    },
   465    {
   466      "description": "type=double",
   467      "clientOptions": {
   468        "autoEncryptOpts": {
   469          "schemaMap": {
   470            "default.default": {
   471              "properties": {
   472                "encrypted_double": {
   473                  "encrypt": {
   474                    "keyId": [
   475                      {
   476                        "$binary": {
   477                          "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
   478                          "subType": "04"
   479                        }
   480                      }
   481                    ],
   482                    "bsonType": "double",
   483                    "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic"
   484                  }
   485                }
   486              },
   487              "bsonType": "object"
   488            }
   489          },
   490          "kmsProviders": {
   491            "aws": {}
   492          }
   493        }
   494      },
   495      "operations": [
   496        {
   497          "name": "insertOne",
   498          "arguments": {
   499            "document": {
   500              "_id": 1,
   501              "encrypted_double": {
   502                "$numberDouble": "1.23"
   503              }
   504            }
   505          },
   506          "result": {
   507            "errorContains": "element of type: double"
   508          }
   509        }
   510      ]
   511    },
   512    {
   513      "description": "type=decimal",
   514      "clientOptions": {
   515        "autoEncryptOpts": {
   516          "schemaMap": {
   517            "default.default": {
   518              "properties": {
   519                "encrypted_decimal": {
   520                  "encrypt": {
   521                    "keyId": [
   522                      {
   523                        "$binary": {
   524                          "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
   525                          "subType": "04"
   526                        }
   527                      }
   528                    ],
   529                    "bsonType": "decimal",
   530                    "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic"
   531                  }
   532                }
   533              },
   534              "bsonType": "object"
   535            }
   536          },
   537          "kmsProviders": {
   538            "aws": {}
   539          }
   540        }
   541      },
   542      "operations": [
   543        {
   544          "name": "insertOne",
   545          "arguments": {
   546            "document": {
   547              "_id": 1,
   548              "encrypted_decimal": {
   549                "$numberDecimal": "1.23"
   550              }
   551            }
   552          },
   553          "result": {
   554            "errorContains": "element of type: decimal"
   555          }
   556        }
   557      ]
   558    },
   559    {
   560      "description": "type=binData",
   561      "clientOptions": {
   562        "autoEncryptOpts": {
   563          "schemaMap": {
   564            "default.default": {
   565              "properties": {
   566                "encrypted_binData": {
   567                  "encrypt": {
   568                    "keyId": [
   569                      {
   570                        "$binary": {
   571                          "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
   572                          "subType": "04"
   573                        }
   574                      }
   575                    ],
   576                    "bsonType": "binData",
   577                    "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic"
   578                  }
   579                }
   580              },
   581              "bsonType": "object"
   582            }
   583          },
   584          "kmsProviders": {
   585            "aws": {}
   586          }
   587        }
   588      },
   589      "operations": [
   590        {
   591          "name": "insertOne",
   592          "arguments": {
   593            "document": {
   594              "_id": 1,
   595              "encrypted_binData": {
   596                "$binary": {
   597                  "base64": "AAAA",
   598                  "subType": "00"
   599                }
   600              }
   601            }
   602          }
   603        },
   604        {
   605          "name": "findOne",
   606          "arguments": {
   607            "filter": {
   608              "_id": 1
   609            }
   610          },
   611          "result": {
   612            "_id": 1,
   613            "encrypted_binData": {
   614              "$binary": {
   615                "base64": "AAAA",
   616                "subType": "00"
   617              }
   618            }
   619          }
   620        }
   621      ],
   622      "expectations": [
   623        {
   624          "command_started_event": {
   625            "command": {
   626              "find": "datakeys",
   627              "filter": {
   628                "$or": [
   629                  {
   630                    "_id": {
   631                      "$in": [
   632                        {
   633                          "$binary": {
   634                            "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
   635                            "subType": "04"
   636                          }
   637                        }
   638                      ]
   639                    }
   640                  },
   641                  {
   642                    "keyAltNames": {
   643                      "$in": []
   644                    }
   645                  }
   646                ]
   647              },
   648              "$db": "keyvault",
   649              "readConcern": {
   650                "level": "majority"
   651              }
   652            },
   653            "command_name": "find"
   654          }
   655        },
   656        {
   657          "command_started_event": {
   658            "command": {
   659              "insert": "default",
   660              "documents": [
   661                {
   662                  "_id": 1,
   663                  "encrypted_binData": {
   664                    "$binary": {
   665                      "base64": "AQAAAAAAAAAAAAAAAAAAAAAFB/KHZQHaHHo8fctcl7v6kR+sLkJoTRx2cPSSck9ya+nbGROSeFhdhDRHaCzhV78fDEqnMDSVPNi+ZkbaIh46GQ==",
   666                      "subType": "06"
   667                    }
   668                  }
   669                }
   670              ],
   671              "ordered": true
   672            },
   673            "command_name": "insert"
   674          }
   675        },
   676        {
   677          "command_started_event": {
   678            "command": {
   679              "find": "default",
   680              "filter": {
   681                "_id": 1
   682              }
   683            },
   684            "command_name": "find"
   685          }
   686        }
   687      ],
   688      "outcome": {
   689        "collection": {
   690          "data": [
   691            {
   692              "_id": 1,
   693              "encrypted_binData": {
   694                "$binary": {
   695                  "base64": "AQAAAAAAAAAAAAAAAAAAAAAFB/KHZQHaHHo8fctcl7v6kR+sLkJoTRx2cPSSck9ya+nbGROSeFhdhDRHaCzhV78fDEqnMDSVPNi+ZkbaIh46GQ==",
   696                  "subType": "06"
   697                }
   698              }
   699            }
   700          ]
   701        }
   702      }
   703    },
   704    {
   705      "description": "type=javascript",
   706      "clientOptions": {
   707        "autoEncryptOpts": {
   708          "schemaMap": {
   709            "default.default": {
   710              "properties": {
   711                "encrypted_javascript": {
   712                  "encrypt": {
   713                    "keyId": [
   714                      {
   715                        "$binary": {
   716                          "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
   717                          "subType": "04"
   718                        }
   719                      }
   720                    ],
   721                    "bsonType": "javascript",
   722                    "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic"
   723                  }
   724                }
   725              },
   726              "bsonType": "object"
   727            }
   728          },
   729          "kmsProviders": {
   730            "aws": {}
   731          }
   732        }
   733      },
   734      "operations": [
   735        {
   736          "name": "insertOne",
   737          "arguments": {
   738            "document": {
   739              "_id": 1,
   740              "encrypted_javascript": {
   741                "$code": "var x = 1;"
   742              }
   743            }
   744          }
   745        },
   746        {
   747          "name": "findOne",
   748          "arguments": {
   749            "filter": {
   750              "_id": 1
   751            }
   752          },
   753          "result": {
   754            "_id": 1,
   755            "encrypted_javascript": {
   756              "$code": "var x = 1;"
   757            }
   758          }
   759        }
   760      ],
   761      "expectations": [
   762        {
   763          "command_started_event": {
   764            "command": {
   765              "find": "datakeys",
   766              "filter": {
   767                "$or": [
   768                  {
   769                    "_id": {
   770                      "$in": [
   771                        {
   772                          "$binary": {
   773                            "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
   774                            "subType": "04"
   775                          }
   776                        }
   777                      ]
   778                    }
   779                  },
   780                  {
   781                    "keyAltNames": {
   782                      "$in": []
   783                    }
   784                  }
   785                ]
   786              },
   787              "$db": "keyvault",
   788              "readConcern": {
   789                "level": "majority"
   790              }
   791            },
   792            "command_name": "find"
   793          }
   794        },
   795        {
   796          "command_started_event": {
   797            "command": {
   798              "insert": "default",
   799              "documents": [
   800                {
   801                  "_id": 1,
   802                  "encrypted_javascript": {
   803                    "$binary": {
   804                      "base64": "AQAAAAAAAAAAAAAAAAAAAAANrvMgJkTKWGMc9wt3E2RBR2Hu5gL9p+vIIdHe9FcOm99t1W480/oX1Gnd87ON3B399DuFaxi/aaIiQSo7gTX6Lw==",
   805                      "subType": "06"
   806                    }
   807                  }
   808                }
   809              ],
   810              "ordered": true
   811            },
   812            "command_name": "insert"
   813          }
   814        },
   815        {
   816          "command_started_event": {
   817            "command": {
   818              "find": "default",
   819              "filter": {
   820                "_id": 1
   821              }
   822            },
   823            "command_name": "find"
   824          }
   825        }
   826      ],
   827      "outcome": {
   828        "collection": {
   829          "data": [
   830            {
   831              "_id": 1,
   832              "encrypted_javascript": {
   833                "$binary": {
   834                  "base64": "AQAAAAAAAAAAAAAAAAAAAAANrvMgJkTKWGMc9wt3E2RBR2Hu5gL9p+vIIdHe9FcOm99t1W480/oX1Gnd87ON3B399DuFaxi/aaIiQSo7gTX6Lw==",
   835                  "subType": "06"
   836                }
   837              }
   838            }
   839          ]
   840        }
   841      }
   842    },
   843    {
   844      "description": "type=javascriptWithScope",
   845      "clientOptions": {
   846        "autoEncryptOpts": {
   847          "schemaMap": {
   848            "default.default": {
   849              "properties": {
   850                "encrypted_javascriptWithScope": {
   851                  "encrypt": {
   852                    "keyId": [
   853                      {
   854                        "$binary": {
   855                          "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
   856                          "subType": "04"
   857                        }
   858                      }
   859                    ],
   860                    "bsonType": "javascriptWithScope",
   861                    "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic"
   862                  }
   863                }
   864              },
   865              "bsonType": "object"
   866            }
   867          },
   868          "kmsProviders": {
   869            "aws": {}
   870          }
   871        }
   872      },
   873      "operations": [
   874        {
   875          "name": "insertOne",
   876          "arguments": {
   877            "document": {
   878              "_id": 1,
   879              "encrypted_javascriptWithScope": {
   880                "$code": "var x = 1;",
   881                "$scope": {}
   882              }
   883            }
   884          },
   885          "result": {
   886            "errorContains": "element of type: javascriptWithScope"
   887          }
   888        }
   889      ]
   890    },
   891    {
   892      "description": "type=object",
   893      "clientOptions": {
   894        "autoEncryptOpts": {
   895          "schemaMap": {
   896            "default.default": {
   897              "properties": {
   898                "encrypted_object": {
   899                  "encrypt": {
   900                    "keyId": [
   901                      {
   902                        "$binary": {
   903                          "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
   904                          "subType": "04"
   905                        }
   906                      }
   907                    ],
   908                    "bsonType": "object",
   909                    "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic"
   910                  }
   911                }
   912              },
   913              "bsonType": "object"
   914            }
   915          },
   916          "kmsProviders": {
   917            "aws": {}
   918          }
   919        }
   920      },
   921      "operations": [
   922        {
   923          "name": "insertOne",
   924          "arguments": {
   925            "document": {
   926              "_id": 1,
   927              "encrypted_object": {}
   928            }
   929          },
   930          "result": {
   931            "errorContains": "element of type: object"
   932          }
   933        }
   934      ]
   935    },
   936    {
   937      "description": "type=timestamp",
   938      "clientOptions": {
   939        "autoEncryptOpts": {
   940          "schemaMap": {
   941            "default.default": {
   942              "properties": {
   943                "encrypted_timestamp": {
   944                  "encrypt": {
   945                    "keyId": [
   946                      {
   947                        "$binary": {
   948                          "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
   949                          "subType": "04"
   950                        }
   951                      }
   952                    ],
   953                    "bsonType": "timestamp",
   954                    "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic"
   955                  }
   956                }
   957              },
   958              "bsonType": "object"
   959            }
   960          },
   961          "kmsProviders": {
   962            "aws": {}
   963          }
   964        }
   965      },
   966      "operations": [
   967        {
   968          "name": "insertOne",
   969          "arguments": {
   970            "document": {
   971              "_id": 1,
   972              "encrypted_timestamp": {
   973                "$timestamp": {
   974                  "t": 123,
   975                  "i": 456
   976                }
   977              }
   978            }
   979          }
   980        },
   981        {
   982          "name": "findOne",
   983          "arguments": {
   984            "filter": {
   985              "_id": 1
   986            }
   987          },
   988          "result": {
   989            "_id": 1,
   990            "encrypted_timestamp": {
   991              "$timestamp": {
   992                "t": 123,
   993                "i": 456
   994              }
   995            }
   996          }
   997        }
   998      ],
   999      "expectations": [
  1000        {
  1001          "command_started_event": {
  1002            "command": {
  1003              "find": "datakeys",
  1004              "filter": {
  1005                "$or": [
  1006                  {
  1007                    "_id": {
  1008                      "$in": [
  1009                        {
  1010                          "$binary": {
  1011                            "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
  1012                            "subType": "04"
  1013                          }
  1014                        }
  1015                      ]
  1016                    }
  1017                  },
  1018                  {
  1019                    "keyAltNames": {
  1020                      "$in": []
  1021                    }
  1022                  }
  1023                ]
  1024              },
  1025              "$db": "keyvault",
  1026              "readConcern": {
  1027                "level": "majority"
  1028              }
  1029            },
  1030            "command_name": "find"
  1031          }
  1032        },
  1033        {
  1034          "command_started_event": {
  1035            "command": {
  1036              "insert": "default",
  1037              "documents": [
  1038                {
  1039                  "_id": 1,
  1040                  "encrypted_timestamp": {
  1041                    "$binary": {
  1042                      "base64": "AQAAAAAAAAAAAAAAAAAAAAARJHaM4Gq3MpDTdBasBsEolQaOmxJQU1wsZVaSFAOLpEh1QihDglXI95xemePFMKhg+KNpFg7lw1ChCs2Wn/c26Q==",
  1043                      "subType": "06"
  1044                    }
  1045                  }
  1046                }
  1047              ],
  1048              "ordered": true
  1049            },
  1050            "command_name": "insert"
  1051          }
  1052        },
  1053        {
  1054          "command_started_event": {
  1055            "command": {
  1056              "find": "default",
  1057              "filter": {
  1058                "_id": 1
  1059              }
  1060            },
  1061            "command_name": "find"
  1062          }
  1063        }
  1064      ],
  1065      "outcome": {
  1066        "collection": {
  1067          "data": [
  1068            {
  1069              "_id": 1,
  1070              "encrypted_timestamp": {
  1071                "$binary": {
  1072                  "base64": "AQAAAAAAAAAAAAAAAAAAAAARJHaM4Gq3MpDTdBasBsEolQaOmxJQU1wsZVaSFAOLpEh1QihDglXI95xemePFMKhg+KNpFg7lw1ChCs2Wn/c26Q==",
  1073                  "subType": "06"
  1074                }
  1075              }
  1076            }
  1077          ]
  1078        }
  1079      }
  1080    },
  1081    {
  1082      "description": "type=regex",
  1083      "clientOptions": {
  1084        "autoEncryptOpts": {
  1085          "schemaMap": {
  1086            "default.default": {
  1087              "properties": {
  1088                "encrypted_regex": {
  1089                  "encrypt": {
  1090                    "keyId": [
  1091                      {
  1092                        "$binary": {
  1093                          "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
  1094                          "subType": "04"
  1095                        }
  1096                      }
  1097                    ],
  1098                    "bsonType": "regex",
  1099                    "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic"
  1100                  }
  1101                }
  1102              },
  1103              "bsonType": "object"
  1104            }
  1105          },
  1106          "kmsProviders": {
  1107            "aws": {}
  1108          }
  1109        }
  1110      },
  1111      "operations": [
  1112        {
  1113          "name": "insertOne",
  1114          "arguments": {
  1115            "document": {
  1116              "_id": 1,
  1117              "encrypted_regex": {
  1118                "$regularExpression": {
  1119                  "pattern": "test",
  1120                  "options": ""
  1121                }
  1122              }
  1123            }
  1124          }
  1125        },
  1126        {
  1127          "name": "findOne",
  1128          "arguments": {
  1129            "filter": {
  1130              "_id": 1
  1131            }
  1132          },
  1133          "result": {
  1134            "_id": 1,
  1135            "encrypted_regex": {
  1136              "$regularExpression": {
  1137                "pattern": "test",
  1138                "options": ""
  1139              }
  1140            }
  1141          }
  1142        }
  1143      ],
  1144      "expectations": [
  1145        {
  1146          "command_started_event": {
  1147            "command": {
  1148              "find": "datakeys",
  1149              "filter": {
  1150                "$or": [
  1151                  {
  1152                    "_id": {
  1153                      "$in": [
  1154                        {
  1155                          "$binary": {
  1156                            "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
  1157                            "subType": "04"
  1158                          }
  1159                        }
  1160                      ]
  1161                    }
  1162                  },
  1163                  {
  1164                    "keyAltNames": {
  1165                      "$in": []
  1166                    }
  1167                  }
  1168                ]
  1169              },
  1170              "$db": "keyvault",
  1171              "readConcern": {
  1172                "level": "majority"
  1173              }
  1174            },
  1175            "command_name": "find"
  1176          }
  1177        },
  1178        {
  1179          "command_started_event": {
  1180            "command": {
  1181              "insert": "default",
  1182              "documents": [
  1183                {
  1184                  "_id": 1,
  1185                  "encrypted_regex": {
  1186                    "$binary": {
  1187                      "base64": "AQAAAAAAAAAAAAAAAAAAAAALVnxM4UqGhqf5eXw6nsS08am3YJrTf1EvjKitT8tyyMAbHsICIU3GUjuC7EBofCHbusvgo7pDyaClGostFz44nA==",
  1188                      "subType": "06"
  1189                    }
  1190                  }
  1191                }
  1192              ],
  1193              "ordered": true
  1194            },
  1195            "command_name": "insert"
  1196          }
  1197        },
  1198        {
  1199          "command_started_event": {
  1200            "command": {
  1201              "find": "default",
  1202              "filter": {
  1203                "_id": 1
  1204              }
  1205            },
  1206            "command_name": "find"
  1207          }
  1208        }
  1209      ],
  1210      "outcome": {
  1211        "collection": {
  1212          "data": [
  1213            {
  1214              "_id": 1,
  1215              "encrypted_regex": {
  1216                "$binary": {
  1217                  "base64": "AQAAAAAAAAAAAAAAAAAAAAALVnxM4UqGhqf5eXw6nsS08am3YJrTf1EvjKitT8tyyMAbHsICIU3GUjuC7EBofCHbusvgo7pDyaClGostFz44nA==",
  1218                  "subType": "06"
  1219                }
  1220              }
  1221            }
  1222          ]
  1223        }
  1224      }
  1225    },
  1226    {
  1227      "description": "type=date",
  1228      "clientOptions": {
  1229        "autoEncryptOpts": {
  1230          "schemaMap": {
  1231            "default.default": {
  1232              "properties": {
  1233                "encrypted_date": {
  1234                  "encrypt": {
  1235                    "keyId": [
  1236                      {
  1237                        "$binary": {
  1238                          "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
  1239                          "subType": "04"
  1240                        }
  1241                      }
  1242                    ],
  1243                    "bsonType": "date",
  1244                    "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic"
  1245                  }
  1246                }
  1247              },
  1248              "bsonType": "object"
  1249            }
  1250          },
  1251          "kmsProviders": {
  1252            "aws": {}
  1253          }
  1254        }
  1255      },
  1256      "operations": [
  1257        {
  1258          "name": "insertOne",
  1259          "arguments": {
  1260            "document": {
  1261              "_id": 1,
  1262              "encrypted_date": {
  1263                "$date": {
  1264                  "$numberLong": "123"
  1265                }
  1266              }
  1267            }
  1268          }
  1269        },
  1270        {
  1271          "name": "findOne",
  1272          "arguments": {
  1273            "filter": {
  1274              "_id": 1
  1275            }
  1276          },
  1277          "result": {
  1278            "_id": 1,
  1279            "encrypted_date": {
  1280              "$date": {
  1281                "$numberLong": "123"
  1282              }
  1283            }
  1284          }
  1285        }
  1286      ],
  1287      "expectations": [
  1288        {
  1289          "command_started_event": {
  1290            "command": {
  1291              "find": "datakeys",
  1292              "filter": {
  1293                "$or": [
  1294                  {
  1295                    "_id": {
  1296                      "$in": [
  1297                        {
  1298                          "$binary": {
  1299                            "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
  1300                            "subType": "04"
  1301                          }
  1302                        }
  1303                      ]
  1304                    }
  1305                  },
  1306                  {
  1307                    "keyAltNames": {
  1308                      "$in": []
  1309                    }
  1310                  }
  1311                ]
  1312              },
  1313              "$db": "keyvault",
  1314              "readConcern": {
  1315                "level": "majority"
  1316              }
  1317            },
  1318            "command_name": "find"
  1319          }
  1320        },
  1321        {
  1322          "command_started_event": {
  1323            "command": {
  1324              "insert": "default",
  1325              "documents": [
  1326                {
  1327                  "_id": 1,
  1328                  "encrypted_date": {
  1329                    "$binary": {
  1330                      "base64": "AQAAAAAAAAAAAAAAAAAAAAAJ5sN7u6l97+DswfKTqZAijSTSOo5htinGKQKUD7pHNJYlLXGOkB4glrCu7ibu0g3344RHQ5yUp4YxMEa8GD+Snw==",
  1331                      "subType": "06"
  1332                    }
  1333                  }
  1334                }
  1335              ],
  1336              "ordered": true
  1337            },
  1338            "command_name": "insert"
  1339          }
  1340        },
  1341        {
  1342          "command_started_event": {
  1343            "command": {
  1344              "find": "default",
  1345              "filter": {
  1346                "_id": 1
  1347              }
  1348            },
  1349            "command_name": "find"
  1350          }
  1351        }
  1352      ],
  1353      "outcome": {
  1354        "collection": {
  1355          "data": [
  1356            {
  1357              "_id": 1,
  1358              "encrypted_date": {
  1359                "$binary": {
  1360                  "base64": "AQAAAAAAAAAAAAAAAAAAAAAJ5sN7u6l97+DswfKTqZAijSTSOo5htinGKQKUD7pHNJYlLXGOkB4glrCu7ibu0g3344RHQ5yUp4YxMEa8GD+Snw==",
  1361                  "subType": "06"
  1362                }
  1363              }
  1364            }
  1365          ]
  1366        }
  1367      }
  1368    },
  1369    {
  1370      "description": "type=minKey",
  1371      "clientOptions": {
  1372        "autoEncryptOpts": {
  1373          "schemaMap": {
  1374            "default.default": {
  1375              "properties": {
  1376                "encrypted_minKey": {
  1377                  "encrypt": {
  1378                    "keyId": [
  1379                      {
  1380                        "$binary": {
  1381                          "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
  1382                          "subType": "04"
  1383                        }
  1384                      }
  1385                    ],
  1386                    "bsonType": "minKey",
  1387                    "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic"
  1388                  }
  1389                }
  1390              },
  1391              "bsonType": "object"
  1392            }
  1393          },
  1394          "kmsProviders": {
  1395            "aws": {}
  1396          }
  1397        }
  1398      },
  1399      "operations": [
  1400        {
  1401          "name": "insertOne",
  1402          "arguments": {
  1403            "document": {
  1404              "_id": 1,
  1405              "encrypted_minKey": {
  1406                "$minKey": 1
  1407              }
  1408            }
  1409          },
  1410          "result": {
  1411            "errorContains": "Cannot encrypt element of type: minKey"
  1412          }
  1413        }
  1414      ]
  1415    },
  1416    {
  1417      "description": "type=maxKey",
  1418      "clientOptions": {
  1419        "autoEncryptOpts": {
  1420          "schemaMap": {
  1421            "default.default": {
  1422              "properties": {
  1423                "encrypted_maxKey": {
  1424                  "encrypt": {
  1425                    "keyId": [
  1426                      {
  1427                        "$binary": {
  1428                          "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
  1429                          "subType": "04"
  1430                        }
  1431                      }
  1432                    ],
  1433                    "bsonType": "maxKey",
  1434                    "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic"
  1435                  }
  1436                }
  1437              },
  1438              "bsonType": "object"
  1439            }
  1440          },
  1441          "kmsProviders": {
  1442            "aws": {}
  1443          }
  1444        }
  1445      },
  1446      "operations": [
  1447        {
  1448          "name": "insertOne",
  1449          "arguments": {
  1450            "document": {
  1451              "_id": 1,
  1452              "encrypted_maxKey": {
  1453                "$maxKey": 1
  1454              }
  1455            }
  1456          },
  1457          "result": {
  1458            "errorContains": "Cannot encrypt element of type: maxKey"
  1459          }
  1460        }
  1461      ]
  1462    },
  1463    {
  1464      "description": "type=undefined",
  1465      "clientOptions": {
  1466        "autoEncryptOpts": {
  1467          "schemaMap": {
  1468            "default.default": {
  1469              "properties": {
  1470                "encrypted_undefined": {
  1471                  "encrypt": {
  1472                    "keyId": [
  1473                      {
  1474                        "$binary": {
  1475                          "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
  1476                          "subType": "04"
  1477                        }
  1478                      }
  1479                    ],
  1480                    "bsonType": "undefined",
  1481                    "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic"
  1482                  }
  1483                }
  1484              },
  1485              "bsonType": "object"
  1486            }
  1487          },
  1488          "kmsProviders": {
  1489            "aws": {}
  1490          }
  1491        }
  1492      },
  1493      "operations": [
  1494        {
  1495          "name": "insertOne",
  1496          "arguments": {
  1497            "document": {
  1498              "_id": 1,
  1499              "encrypted_undefined": {
  1500                "$undefined": true
  1501              }
  1502            }
  1503          },
  1504          "result": {
  1505            "errorContains": "Cannot encrypt element of type: undefined"
  1506          }
  1507        }
  1508      ]
  1509    },
  1510    {
  1511      "description": "type=array",
  1512      "clientOptions": {
  1513        "autoEncryptOpts": {
  1514          "schemaMap": {
  1515            "default.default": {
  1516              "properties": {
  1517                "encrypted_array": {
  1518                  "encrypt": {
  1519                    "keyId": [
  1520                      {
  1521                        "$binary": {
  1522                          "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
  1523                          "subType": "04"
  1524                        }
  1525                      }
  1526                    ],
  1527                    "bsonType": "array",
  1528                    "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic"
  1529                  }
  1530                }
  1531              },
  1532              "bsonType": "object"
  1533            }
  1534          },
  1535          "kmsProviders": {
  1536            "aws": {}
  1537          }
  1538        }
  1539      },
  1540      "operations": [
  1541        {
  1542          "name": "insertOne",
  1543          "arguments": {
  1544            "document": {
  1545              "_id": 1,
  1546              "encrypted_array": []
  1547            }
  1548          },
  1549          "result": {
  1550            "errorContains": "element of type: array"
  1551          }
  1552        }
  1553      ]
  1554    },
  1555    {
  1556      "description": "type=bool",
  1557      "clientOptions": {
  1558        "autoEncryptOpts": {
  1559          "schemaMap": {
  1560            "default.default": {
  1561              "properties": {
  1562                "encrypted_bool": {
  1563                  "encrypt": {
  1564                    "keyId": [
  1565                      {
  1566                        "$binary": {
  1567                          "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
  1568                          "subType": "04"
  1569                        }
  1570                      }
  1571                    ],
  1572                    "bsonType": "bool",
  1573                    "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic"
  1574                  }
  1575                }
  1576              },
  1577              "bsonType": "object"
  1578            }
  1579          },
  1580          "kmsProviders": {
  1581            "aws": {}
  1582          }
  1583        }
  1584      },
  1585      "operations": [
  1586        {
  1587          "name": "insertOne",
  1588          "arguments": {
  1589            "document": {
  1590              "_id": 1,
  1591              "encrypted_bool": true
  1592            }
  1593          },
  1594          "result": {
  1595            "errorContains": "element of type: bool"
  1596          }
  1597        }
  1598      ]
  1599    },
  1600    {
  1601      "description": "type=null",
  1602      "clientOptions": {
  1603        "autoEncryptOpts": {
  1604          "schemaMap": {
  1605            "default.default": {
  1606              "properties": {
  1607                "encrypted_null": {
  1608                  "encrypt": {
  1609                    "keyId": [
  1610                      {
  1611                        "$binary": {
  1612                          "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
  1613                          "subType": "04"
  1614                        }
  1615                      }
  1616                    ],
  1617                    "bsonType": "null",
  1618                    "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic"
  1619                  }
  1620                }
  1621              },
  1622              "bsonType": "object"
  1623            }
  1624          },
  1625          "kmsProviders": {
  1626            "aws": {}
  1627          }
  1628        }
  1629      },
  1630      "operations": [
  1631        {
  1632          "name": "insertOne",
  1633          "arguments": {
  1634            "document": {
  1635              "_id": 1,
  1636              "encrypted_null": true
  1637            }
  1638          },
  1639          "result": {
  1640            "errorContains": "Cannot encrypt element of type: null"
  1641          }
  1642        }
  1643      ]
  1644    }
  1645  ]
  1646}

View as plain text