@uconn-its/adtools
v1.1.0
Published
ActiveDirectory toolkit for domain applications
Downloads
6
Readme
adtools
adtools is a TypeScript library that allows you to easily make ActiveDirectory calls from your application.
Installation
Use npm to install adtools.
npm install @uconn-its/adtools
Usage
import {
bind,
find,
findAt,
findComputer,
findComputersByOU,
findGroup,
findOU,
findOUs,
findUser
} from '@uconn-its/adtools';
const baseDN = 'OU=Test,DC=ad,DC=example,DC=com';
const directory = await bind('ad.example.com', '[email protected]', 'password', baseDN).catch(err => {
console.log('Failed to bind to the domain:', err);
return null;
});
if (!directory) return process.exit(-1);
// Perform an LDAP query
let results = await find(directory, '(&(objectClass=user)(cn=Example))');
// Perform an LDAP query with a custom base DN
let results = await findAt(directory, '(&(objectClass=user)(cn=Example))', baseDN);
// Find an OU by it's name
let ou = await findOU(directory, 'Test');
// Find all OUs (from root or from a custom base DN)
let ous = await findOUs(directory);
= await findOUs(directory, baseDN);
// Find a domain user by their CN
let user = await findUser(directory, 'user');
// Find a group by it's CN
let group = await findGroup(directory, 'group');
// Find a computer by it's CN
let computer = await findComputer(directory, 'ComputerName');
// Find all computers in a target OU
let computers = await findComputersByOU(directory, baseDN);
Publishing
To publish an update to this package follow these steps;
- Make sure your git directory is clean by commiting or stashing all changes.
- Move the
.env.example
to.env
and change theNPMRC_TOKEN
variable to a token with access to@uconn-its
(Found in LastPass underITS WebDev -- NPM/uconn-its NPM Access Token
). - Increment the package version by either manually changing the
package.json
file or runningnpm version <major/minor/patch>
. - Publish the package to the registry by running
npm publish
. (Note: If you get a 404 error, simply runnpm publish
again.)