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.
 
 
 
 
Thomas Rittson b830c8be27
[PM-26454] Undo removal of core-js to fix dynamic import errors (#890)
3 months ago
.github [deps]: Update actions/setup-node action to v5 (#875) 3 months ago
.husky Make husky pre-commit hook executable (#223) 4 years ago
.vscode Apply Prettier (#194) 4 years ago
jslib SRE-2329 remove auth-email header (#784) 4 months ago
openldap add example ldif file with 11k users (#724) 9 months ago
resources disable-library-validation entitlement 6 years ago
scripts Switch to API key (#566) 1 year ago
src [PM-26454] Undo removal of core-js to fix dynamic import errors (#890) 3 months ago
src-cli [deps]: Lock file maintenance (#565) 10 months 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 Add SafeProvider (#582) 1 year ago
.nvmrc [PM-21956] Migrate to yao-pkg and upgrade CLI to node 20 (#817) 5 months 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 [PM-21187] Rename Azure AD to Entra ID (#797) 6 months ago
SECURITY.md Update SECURITY.md (#250) 4 years ago
angular.json Angular 15 (#326) 3 years ago
docker-compose.yml [PM-13008] Add ldap integration tests (#637) 1 year ago
electron-builder.json [DEVOPS-1167] - Update DC MacOS GUI artifact name (#296) 3 years ago
jest.config.js Configure Codecov coverage and results (#569) 1 year ago
package-lock.json [PM-26454] Undo removal of core-js to fix dynamic import errors (#890) 3 months ago
package.json [PM-26454] Undo removal of core-js to fix dynamic import errors (#890) 3 months ago
test.setup.ts [AC-1743] pt. 2.5 ⮕ Fix the unit tests for good (#398) 2 years ago
tsconfig.eslint.json Remove typescript-transform-paths dependency (#720) 10 months 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 Upgrade prettier (#409) 2 years ago

README.md

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

Bitwarden Directory Connector

The Bitwarden Directory Connector is 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
  • Microsoft Entra ID
  • 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