Socket
Socket
Sign inDemoInstall

ad-promise

Package Overview
Dependencies
Maintainers
1
Versions
32
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

ad-promise - npm Package Compare versions

Comparing version 1.6.2 to 1.6.3

40

lib/services/service.isUserMemberOf.js

@@ -26,10 +26,17 @@ const _ = require('underscore');

});
self.getGroupMembershipForUser(opts, username, function (err, groups) {
if (err) {
let usersOfGroup = self.getUsersForGroup(opts, groupName);
let user = self.findUser(opts, username);
Promise.all([usersOfGroup, user]).then(data => {
let usersOfGroup = data[0];
let user = data[1];
if(usersOfGroup.map(userOfGroup => {
return userOfGroup.dn;
}).indexOf(user.dn) !== -1){
if(callback){
callback(err);
}
return reject(err);
}
if ((!groups) || (groups.length === 0)) {
callback(null, true);
}
return resolve(true);
} else {
log.info('"%s" IS NOT a member of "%s". No groups found for user.', username, groupName);

@@ -41,20 +48,11 @@ if(callback){

}
// Check to see if the group.distinguishedName or group.cn matches the list of
// retrieved groups.
var lowerCaseGroupName = (groupName || '').toLowerCase();
var result = _.any(groups, function (item) {
return (((item.dn || '').toLowerCase() === lowerCaseGroupName) ||
((item.cn || '').toLowerCase() === lowerCaseGroupName));
});
log.info('"%s" %s a member of "%s"', username, result ? 'IS' : 'IS NOT', groupName);
}, err => {
if(callback){
callback(null, result);
}
return resolve(result);
callback(err);
}
return reject(err);
});
});
});
};
module.exports = isUserMemberOf;
{
"author": "Relief Melone (relief.melone@gmail.com)",
"name": "ad-promise",
"version": "1.6.2",
"version": "1.6.3",
"description": "This is a fork of the gheeres node-activedirectory. It fixes some issues with timeouts with very large AD-Groups as well as returning also promises so you won't have to use callbacks",

@@ -6,0 +6,0 @@ "main": "index.js",

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc