How to use the mongodb-client-encryption.AutoEncrypter function in mongodb-client-encryption

To help you get started, we’ve selected a few mongodb-client-encryption examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github Hanul / UPPERCASE / UPPERCASE-DB / node_modules / mongodb / lib / operations / connect.js View on Github external
}

    // setup for client side encryption
    let AutoEncrypter;
    try {
      require.resolve('mongodb-client-encryption');
    } catch (err) {
      callback(
        new MongoError(
          'Auto-encryption requested, but the module is not installed. Please add `mongodb-client-encryption` as a dependency of your project'
        )
      );
      return;
    }
    try {
      AutoEncrypter = require('mongodb-client-encryption')(require('../../index')).AutoEncrypter;
    } catch (err) {
      callback(err);
      return;
    }

    const mongoCryptOptions = Object.assign({}, options.autoEncryption);
    topology.s.options.autoEncrypter = new AutoEncrypter(mongoClient, mongoCryptOptions);
    topology.s.options.autoEncrypter.init(err => {
      if (err) return callback(err, null);
      callback(null, topology);
    });
  });
}
github mongodb / node-mongodb-native / lib / operations / connect.js View on Github external
topology.connect(options, (err, newTopology) => {
    if (err) {
      topology.close(true);
      return callback(err);
    }

    assignTopology(mongoClient, newTopology);
    if (options.autoEncryption == null) {
      callback(null, newTopology);
      return;
    }

    // setup for client side encryption
    let AutoEncrypter;
    try {
      AutoEncrypter = require('mongodb-client-encryption').AutoEncrypter;
    } catch (err) {
      callback(
        new MongoError(
          'Auto-encryption requested, but the module is not installed. Please add `mongodb-client-encryption` as a dependency of your project'
        )
      );

      return;
    }

    const MongoClient = loadClient();
    let connectionString;
    if (options.autoEncryption.extraOptions && options.autoEncryption.extraOptions.mongocryptURI) {
      connectionString = options.autoEncryption.extraOptions.mongocryptURI;
    } else if (os.platform() === 'win32') {
      connectionString = 'mongodb://localhost:27020/?serverSelectionTimeoutMS=1000';

mongodb-client-encryption

Official client encryption module for the MongoDB Node.js driver

Apache-2.0
Latest version published 8 months ago

Package Health Score

77 / 100
Full package analysis

Similar packages