A tool for syncing a directory (AD, LDAP, Azure, G Suite, Okta) to an organization.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
Addison Beck 9afa709e8a
Update package-lock.json
2 years ago
.github Update Renovate config (#407) 2 years ago
.husky Make husky pre-commit hook executable (#223) 4 years ago
.vscode Apply Prettier (#194) 4 years ago
jslib Upgrade @types/inquirer 2 years ago
resources disable-library-validation entitlement 6 years ago
scripts Add eslint (#243) 4 years ago
src Replace '@' with it's HTML code in settings examples 2 years ago
src-cli Remove more lower-level packages (#336) 3 years ago
.depcheckrc [AC-1743] pt. 3 ⮕ Remove unused packages (#399) 2 years ago
.editorconfig Add Prettier configuration (#193) 4 years ago
.eslintignore Copy jslib into Directory Connector [TI-6] (#262) 4 years ago
.eslintrc.json [AC-1743] pt. 2: Update eslintrc and fix any errors (#393) 2 years ago
.git-blame-ignore-revs Add .git-blame-ignore-revs (#195) 4 years ago
.gitattributes stub out projects for the solution 9 years ago
.gitignore [AC-1743] pt. 1: Unpackage-ify jslib (#374) 2 years ago
.nvmrc Update Node.js to v18 (#310) 3 years ago
.prettierignore Copy jslib into Directory Connector [TI-6] (#262) 4 years ago
.prettierrc.json Add Prettier configuration (#193) 4 years ago
CONTRIBUTING.md stub out directory services 8 years ago
ISSUE_TEMPLATE.md stub out directory services 8 years ago
LICENSE.txt stub out directory services 8 years ago
README.md Mention Node 18 (#351) 2 years ago
SECURITY.md Update SECURITY.md (#250) 4 years ago
angular.json Angular 15 (#326) 3 years ago
electron-builder.json [DEVOPS-1167] - Update DC MacOS GUI artifact name (#296) 3 years ago
jest.config.js [AC-1743] pt. 2.5 ⮕ Fix the unit tests for good (#398) 2 years ago
package-lock.json Update package-lock.json 2 years ago
package.json Upgrade typescript-transform-paths 2 years ago
test.setup.ts [AC-1743] pt. 2.5 ⮕ Fix the unit tests for good (#398) 2 years ago
tsconfig.eslint.json [AC-1743] pt. 2.5 ⮕ Fix the unit tests for good (#398) 2 years ago
tsconfig.json [AC-1743] pt. 2.5 ⮕ Fix the unit tests for good (#398) 2 years ago
webpack.cli.js Add eslint (#243) 4 years ago
webpack.main.js [AC-1743] pt. 1: Unpackage-ify jslib (#374) 2 years ago
webpack.renderer.js [AC-1743] pt. 3 ⮕ Remove unused packages (#399) 2 years ago

README.md

Build Join the chat at https://gitter.im/bitwarden/Lobby

Bitwarden Directory Connector

The Bitwarden Directory Connector is a a desktop application used to sync your Bitwarden enterprise organization to an existing directory of users and groups.

Supported directories:

  • Active Directory
  • Any other LDAP-based directory
  • Azure Active Directory
  • G Suite (Google)
  • Okta

The application is written using Electron with Angular and installs on Windows, macOS, and Linux distributions.

Platforms

Directory Connector

Command-line Interface

A command-line interface tool is also available for the Bitwarden Directory Connector. The Directory Connector CLI (bwdc) is written with TypeScript and Node.js and can also be run on Windows, macOS, and Linux distributions.

CLI Documentation

The Bitwarden Directory Connector CLI is self-documented with --help content and examples for every command. You should start exploring the CLI by using the global --help option:

bwdc --help

This option will list all available commands that you can use with the Directory Connector CLI.

Additionally, you can run the --help option on a specific command to learn more about it:

bwdc test --help
bwdc config --help

Detailed Documentation

We provide detailed documentation and examples for using the Directory Connector CLI in our help center at https://bitwarden.com/help/directory-sync-cli/.

Build/Run

Requirements

  • Node.js v18 (LTS)
  • Windows users: To compile the native node modules used in the app you will need the Visual C++ toolset, available through the standard Visual Studio installer (recommended) or by installing windows-build-tools through npm. See more at Compiling native Addon modules.

Run the app

npm install
npm run reset # Only necessary if you have previously run the CLI app
npm run rebuild
npm run electron

Run the CLI

npm install
npm run reset # Only necessary if you have previously run the desktop app
npm run build:cli:watch

You can then run commands from the ./build-cli folder:

node ./build-cli/bwdc.js --help

We're Hiring!

Interested in contributing in a big way? Consider joining our team! We're hiring for many positions. Please take a look at our Careers page to see what opportunities are currently open as well as what it's like to work at Bitwarden.

Contribute

Code contributions are welcome! Please commit any pull requests against the master branch. Learn more about how to contribute by reading the CONTRIBUTING.md file.

Security audits and feedback are welcome. Please open an issue or email us privately if the report is sensitive in nature. You can read our security policy in the SECURITY.md file.

Prettier

We recently migrated to using Prettier as code formatter. All previous branches will need to updated to avoid large merge conflicts using the following steps:

  1. Check out your local Branch
  2. Run git merge 225073aa335d33ad905877b68336a9288e89ea10
  3. Resolve any merge conflicts, commit.
  4. Run npm run prettier
  5. Commit
  6. Run git merge -Xours 096196fcd512944d1c3d9c007647a1319b032639
  7. Push

Git blame

We also recommend that you configure git to ignore the prettier revision using:

git config blame.ignoreRevsFile .git-blame-ignore-revs