Padloc Logo Docs & Resources

Class: Server

server.Server

The Padloc server acts as a central repository for Accounts, Orgs and Vaults. Server handles authentication, enforces user privileges and acts as a mediator for key exchange between clients.

The server component acts on a strict zero-trust, zero-knowledge principle when it comes to sensitive data, meaning no sensitive data is ever exposed to the server at any point, nor should the server (or the person controlling it) ever be able to temper with critical data or trick users into granting them access to encrypted information.

Constructors

constructor

• new Server(config, storage, messenger, logger?, authServers?, attachmentStorage, provisioner?, legacyServer?)

Parameters

Name Type Default value
config ServerConfig undefined
storage Storage undefined
messenger Messenger undefined
logger Logger undefined
authServers AuthServer[] []
attachmentStorage AttachmentStorage undefined
provisioner Provisioner undefined
legacyServer? LegacyServer undefined

Defined in

core/src/server.ts:1902

Properties

_requestQueue

• Private _requestQueue: Map<string, Promise<void>>

Defined in

core/src/server.ts:1915


attachmentStorage

• attachmentStorage: AttachmentStorage


authServers

• authServers: AuthServer[] = []


config

• config: ServerConfig


legacyServer

• Optional legacyServer: LegacyServer


logger

• logger: Logger


messenger

• messenger: Messenger


provisioner

• provisioner: Provisioner


storage

• storage: Storage

Methods

_addToQueue

▸ Private _addToQueue(context): Promise<() => void>

Parameters

Name Type
context Context

Returns

Promise<() => void>

Defined in

core/src/server.ts:2057


_handleError

▸ Private _handleError(error, req, res, context): Promise<void>

Parameters

Name Type
error Error
req Request
res Response
context Context

Returns

Promise<void>

Defined in

core/src/server.ts:2079


handle

▸ handle(req): Promise<Response>

Handles an incoming Request, processing it and constructing a [[Reponse]]

Parameters

Name Type
req Request

Returns

Promise<Response>

Defined in

core/src/server.ts:1943


log

▸ log(type, context, data?): LogEvent

Parameters

Name Type
type string
context Context
data any

Returns

LogEvent

Defined in

core/src/server.ts:1921


makeController

▸ makeController(ctx): C

Parameters

Name Type
ctx Context

Returns

C

Defined in

core/src/server.ts:1917


updateMetaData

▸ updateMetaData(org): Promise<void>

Parameters

Name Type
org Org

Returns

Promise<void>

Defined in

core/src/server.ts:1986