Skip to main content
Skip table of contents

Workers & Components

SignServer is built around a modular, worker-based architecture.

SignServer workers are configured to perform certain activities like signing files of a certain type, often with a specific key. Each worker is an independent processing unit that performs a specific cryptographic or operational task. Workers interact with shared system components to deliver signing services, such as configuration, validation, and crypto providers.

The configuration and logs are optionally stored in a database.

Workers: The Core Execution Units

A worker is a self-contained module with its own configuration and lifecycle.

Workers are configured by setting properties in the worker configuration. The common configuration options handled by the framework apply to all workers. In addition, there are worker specific properties, handled by the worker implementation. For more information, see Common Worker Properties.

Signer Workers

Signers are the most common workers and perform signing operations. A Signer specifies how to perform the signature creation, and which key and certificate to use.

Signers perform cryptographic operations such as:

  • Code signing

  • Document signing (PDF, XML)

  • Timestamping (TSA)

  • Key generation & certificate requests

Helper / Service Workers

Workers that do not sign but support other processes:

Worker

Description

Checks the signature and the certificate(s) in documents.

Forwards requests to another worker, and does not perform any processing of its own.

Validates certificates from one or more issuers.

Runs on a timely basis, performing maintenance tasks like changing active keys or generating a report.

For a list of other SignServer workers with special functionalities, see Other Workers.

Crypto Tokens

Workers needing private keys do not talk directly to HSMs or Keystores. Instead, they use a Crypto Worker with a configured Crypto Token which abstracts the crypto backend.

For more information, see Crypto Tokens: HSMs & Keystores.

Components for Workers

Components provide specific functionality and are configured in the SignServer workers.

Examples of components include:

Component

Description

Decides if a request should be allowed or not.

Allows controlling how the key used for signing is selected at run-time based on the signing request.

Allows the Archiver to store requests or responses by configuring one or more on a worker.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.