Configuring the Archive Browser

All runtime configurations are stored in the archivebrowser.ini file, located in the bin/ directory next to the JAR. Changes to most settings require a restart to take effect (with exceptions like archive path and built-in users).

The INI File Structure

This is the structure of archivebrowser.ini:

Parameter Name Description
[ GLOBAL ] This section controls the application listening port, as well as the retention and paths for log files.
port =

The port the application listens on.

Allowed values: A valid port number

Default value: 8443

Environment Variable: PORT or SERVER_PORT

logging =

The path and filename pattern where runtime log files are written.

Default value: ../temp/archivebrowser_##.log

logcount =

The maximum number of log files to retain before the system overwrites the oldest files.

Allowed values: Numeric

[ GENERAL ] This section defines where the ucybdbar archives are located and manages the security secrets required by the application.
archive_folder =

The path to the directory containing the exported ucybdbar archive files. This setting is required.

Environment Variable: APP_ARCHIVE_FOLDER_LOCATION

lucene_index =

The path to the directory where the full-text search index is stored.

Default value: ../lucene/

jwt_secret =

The secret used to sign JSON Web Tokens. This setting is required. You must change this to a long, random string before deploying to production to prevent token forgery.

Environment Variable: JWT_SECRET

docs_url Base URL for the documentation Help button. No restart required. Can be overridden with a local intranet URL.
[ SSL ] This section configures HTTPS parameters and certificates for the Archive Browser.
enabled =

Determines whether the application uses SSL (HTTPS).

Allowed values: yes, no

Default value: yes

keystore =

The path to your custom CA-signed keystore file.

Allowed values: A valid file system path

keystore_password = The password required to access the specified keystore.
keystore_type = The format of the keystore file. Allowed values: PKCS12, JKS
keystore_alias = The alias of the specific certificate within the keystore to use.
[ AUTHENTICATION ] This section configures the login mode for the application.
mode =

Determines the authentication method.

Allowed values:

config: Only built-in users defined in the INI file can log in.

ldap: LDAP/Active Directory users can log in (built-in users remain active too).

Default value: config

[ LOCAL_USERS_0 ] This section defines the built-in user accounts. Passwords are stored as Argon2 hashes; a plain-text password entered here is hashed automatically on the next startup.
username =

The login name for the built-in user. The UC user is required and cannot be removed via the Settings UI.

password =

The password for the user.

role =

The permission level assigned to the user.

Allowed values: admin, manager

[ LDAP ] This section configures the server connection and user matching patterns if the authentication mode is set to ldap.
url =

The LDAP or LDAPS server URL.

Example: ldap://ldap.example.com:389

base_dn =

The Base DN used for user searches within the directory.

Example: dc=example,dc=com

domain =

The Active Directory domain name. When set, the application automatically attempts both UPN (user@domain.com) and NetBIOS (DOMAIN\user) bind formats, allowing users to log in with just their short username. Leave blank for plain LDAP.

user_dn_patterns

The User DN pattern, where {0} acts as a placeholder that is replaced by the login username.

Example: uid={0},ou=people

bind_dn = The optional bind account used strictly for user directory searches. If left blank, the user picker in the Settings UI is disabled and users must be added manually.
bind_password = The bind password stored as AES-256 encrypted text. This is configured via the Settings UI and should not be edited manually.

Environment Variables

For containerized deployments, key settings can be overridden using environment variables. Environment variables take precedence over the INI file.

  • PORT or SERVER_PORT: Overrides the port.

  • APP_ARCHIVE_FOLDER_LOCATION: Overrides [GENERAL] archive_folder.

  • JWT_SECRET: Overrides [GENERAL] jwt_secret.

See also:

Setting up and Administering the Archive Browser