1
0
mirror of https://github.com/bitwarden/directory-connector synced 2026-01-04 17:43:31 +00:00

stub out directory services

This commit is contained in:
Kyle Spearrin
2018-04-18 21:10:28 -04:00
parent 598db5c83b
commit 2afbeb1c10
13 changed files with 11230 additions and 67 deletions

View File

@@ -0,0 +1,12 @@
import * as graph from '@microsoft/microsoft-graph-client';
import { DirectoryService } from 'src/services/directory.service';
export class AzureDirectoryService implements DirectoryService {
getEntries(force = false) {
}
private getUsers() {
}
}

View File

@@ -0,0 +1,3 @@
export interface DirectoryService {
getEntries(force?: boolean): any;
}

View File

@@ -0,0 +1,14 @@
import { google, GoogleApis } from 'googleapis';
import { Admin } from 'googleapis/build/src/apis/admin/directory_v1';
import { DirectoryService } from 'src/services/directory.service';
export class GSuiteDirectoryService implements DirectoryService {
getEntries(force = false) {
}
private async getUsers() {
const service = google.admin<Admin>('directory_v1');
const groups = await service.groups.list();
}
}

View File

@@ -0,0 +1,39 @@
import * as ldap from 'ldapjs';
import { DirectoryService } from 'src/services/directory.service';
export class LdapDirectoryService implements DirectoryService {
getEntries(force = false) {
}
private getUsers() {
const client = ldap.createClient({
url: 'ldap://127.0.0.1:1389'
});
const options: ldap.SearchOptions = {
filter: '(&(l=Seattle)(email=*@foo.com))',
scope: 'sub',
attributes: ['dn', 'sn', 'cn']
};
client.search('o=example', options, (error, response) => {
if (error != null) {
}
response.on('searchEntry', (entry) => {
console.log('entry: ' + JSON.stringify(entry.object));
});
response.on('searchReference', (referral) => {
console.log('referral: ' + referral.uris.join());
});
response.on('error', (err) => {
console.error('error: ' + err.message);
});
response.on('end', (result) => {
console.log('status: ' + result.status);
});
});
}
}