Uploaded image for project: 'Ruby Driver'
  1. Ruby Driver
  2. RUBY-2974

Add FLE 2 API to AutoEncryptionOpts

    • Type: Icon: Spec Change Spec Change
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 2.18.0
    • Affects Version/s: None
    • Component/s: Spec Comp
    • Labels:
    • Hide

      DRIVERS-2297:
      Please see https://github.com/mongodb/specifications/pull/1195 and https://github.com/mongodb/specifications/pull/1214 for the specification changes.

      Please update the tests to this commit, which includes test fixes:
      https://github.com/mongodb/specifications/commit/c3784d44555752bb058993e7b0bb51cab5b3b1d5

      Please see the Go driver implementation for reference.

      Bindings changes

      Upgrade libmongocrypt dependency to 1.5.0. Drivers can use 1.5.0-alpha0 to test. Binaries are available from this upload-all task.

      Update the bindings to libmongocrypt to add the new functions: mongocrypt_setopt_encrypted_field_config_map and mongocrypt_setopt_bypass_query_analysis.

      Drivers that implement crypto callbacks (C#, Java, Node.js, Python, Ruby) need to wrap the new crypto callback: mongocrypt_setopt_aes_256_ctr.

      Drivers languages that do not support CTR mode may alternatively wrap mongocrypt_setopt_aes_256_ecb. From this survey, this may only be C#.

      Driver changes

      Add the new driver API options: AutoEncryptionOpts.encryptedFieldsMap and AutoEncryptionOpts.bypassQueryAnalysis.

      Pass AutoEncryptionOpts.encryptedFieldsMap to libmongocrypt with mongocrypt_setopt_encrypted_field_config_map.

      If AutoEncryptionOpts.bypassQueryAnalysis is true, call the libmongocrypt function mongocrypt_setopt_bypass_query_analysis.

      Test changes

      Add encrypted_fields to the CSFLE specification test format.

      Sync the added CSFLE specification tests.

      Show
      DRIVERS-2297: Please see https://github.com/mongodb/specifications/pull/1195 and https://github.com/mongodb/specifications/pull/1214 for the specification changes. Please update the tests to this commit, which includes test fixes: https://github.com/mongodb/specifications/commit/c3784d44555752bb058993e7b0bb51cab5b3b1d5 Please see the Go driver implementation for reference. Bindings changes Upgrade libmongocrypt dependency to 1.5.0. Drivers can use 1.5.0-alpha0 to test. Binaries are available from this upload-all task . Update the bindings to libmongocrypt to add the new functions: mongocrypt_setopt_encrypted_field_config_map and mongocrypt_setopt_bypass_query_analysis . Drivers that implement crypto callbacks (C#, Java, Node.js, Python, Ruby) need to wrap the new crypto callback: mongocrypt_setopt_aes_256_ctr . Drivers languages that do not support CTR mode may alternatively wrap mongocrypt_setopt_aes_256_ecb . From this survey , this may only be C#. Driver changes Add the new driver API options: AutoEncryptionOpts.encryptedFieldsMap and AutoEncryptionOpts.bypassQueryAnalysis . Pass AutoEncryptionOpts.encryptedFieldsMap to libmongocrypt with mongocrypt_setopt_encrypted_field_config_map . If AutoEncryptionOpts.bypassQueryAnalysis is true, call the libmongocrypt function mongocrypt_setopt_bypass_query_analysis . Test changes Add encrypted_fields to the CSFLE specification test format. Sync the added CSFLE specification tests.

      This ticket was split from DRIVERS-2297, please see that ticket for a detailed description.

            Assignee:
            dmitry.rybakov@mongodb.com Dmitry Rybakov
            Reporter:
            dbeng-pm-bot PM Bot
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: