/
home
/
infinitibizsol
/
irfarms.infinitibizsol.com
/
node_modules
/
mongodb
/
lib
/
cmap
/
auth
/
File Upload :
llllll
Current File: /home/infinitibizsol/irfarms.infinitibizsol.com/node_modules/mongodb/lib/cmap/auth/mongocr.js
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.MongoCR = void 0; const crypto = require("crypto"); const error_1 = require("../../error"); const utils_1 = require("../../utils"); const auth_provider_1 = require("./auth_provider"); class MongoCR extends auth_provider_1.AuthProvider { async auth(authContext) { const { connection, credentials } = authContext; if (!credentials) { throw new error_1.MongoMissingCredentialsError('AuthContext must provide credentials.'); } const { username, password, source } = credentials; const { nonce } = await connection.commandAsync((0, utils_1.ns)(`${source}.$cmd`), { getnonce: 1 }, undefined); const hashPassword = crypto .createHash('md5') .update(`${username}:mongo:${password}`, 'utf8') .digest('hex'); // Final key const key = crypto .createHash('md5') .update(`${nonce}${username}${hashPassword}`, 'utf8') .digest('hex'); const authenticateCommand = { authenticate: 1, user: username, nonce, key }; await connection.commandAsync((0, utils_1.ns)(`${source}.$cmd`), authenticateCommand, undefined); } } exports.MongoCR = MongoCR; //# sourceMappingURL=mongocr.js.map
Copyright ©2k19 -
Hexid
|
Tex7ure