UNPKG

n8n

Version:

n8n Workflow Automation Tool

36 lines (35 loc) 1.53 kB
import type { Entry as LdapUser } from 'ldapts'; import { Cipher, Logger } from 'n8n-core'; import type { RunningMode } from '../databases/entities/auth-provider-sync-history'; import { SettingsRepository } from '../databases/repositories/settings.repository'; import { EventService } from '../events/event.service'; import type { LdapConfig } from './types'; export declare class LdapService { private readonly logger; private readonly settingsRepository; private readonly cipher; private readonly eventService; private client; private syncTimer; config: LdapConfig; constructor(logger: Logger, settingsRepository: SettingsRepository, cipher: Cipher, eventService: EventService); init(): Promise<void>; loadConfig(): Promise<LdapConfig>; updateConfig(ldapConfig: LdapConfig): Promise<void>; setConfig(ldapConfig: LdapConfig): void; private setGlobalLdapConfigVariables; private setLdapLoginEnabled; private getClient; private bindAdmin; searchWithAdminBinding(filter: string): Promise<LdapUser[]>; validUser(dn: string, password: string): Promise<void>; findAndAuthenticateLdapUser(loginId: string, password: string, loginIdAttribute: string, userFilter: string): Promise<LdapUser | undefined>; testConnection(): Promise<void>; private scheduleSync; runSync(mode: RunningMode): Promise<void>; stopSync(): void; private getUsersToProcess; private getUsersToCreate; private getUsersToUpdate; private getUsersToDisable; }