Configuration file reference

On startup, the ActivityInfo server reads its configuration from a file named config.ini, whose location depends on the type of installation:

  • Windows: C:\Program Files\ActivityInfo\config.ini, or the same directory as activityinfo.exe
  • Debian: /opt/activityinfo/config.ini
  • Docker: the root of the activityinfo volume.
  • Other: the current working directory

The configuration file consists of a number of named sections in which key-value pairs are defined. Key names are case-insensitive.

For example:

[Server]
Http Port=80
Https Port=443

[Data]
Data Directory = /opt/activityinfo/data

[Mail]
Enabled = True
Sender Address = notifications@activityinfo.org
Host = smtp.postmarkapp.com
Port = 25

Server section

The Server section configures the web server.

Key Description Default value
Http Port The TCP port on which to listen for HTTP connections. 8081
Https Port The TCP port on which to listen for HTTPS connections. 8081
Https Proxy If 'True', ActivityInfo will not listen for HTTPS connections, but will expect an upstream proxy or load balancer to provide SSL termination. 8081
Domain The server's hostname. This is used when redirecting from http to https, and in the URLs included in emails sent to users. localhost

Data section

The data section specifies where ActivityInfo should store its data.

Key Description Default value
Data Directory The directory where ActivityInfo stores its database files. Current working directory

Mail section

The Mail section configures how ActivityInfo sends notification emails, for example, invitations to a user when they are invited to access a database, or password reset emails. Currently, the ActivityInfo Self-managed server only supports sending emails through SMTP.

Key Description Default value
Enabled True if the server should send email, or False if the server should not send email. False
Sender Address The email address used as the "From" address when the server sends emails. admin@localhost
Host The host name of the SMTP Server localhost
Port The TCP port number of the SMTP Server 25
Username The username to use when authenticating to the SMTP Server
Password The password to use when authenticating to the SMTP Server

Identity Providers

ActivityInfo supports Single-Sign On (SSO) via external Identity Providers (IdP). Each IdP is configured in its own section, named " IdP" for example:

[MyAzure IdP]
Type = OPENID_CONNECT
URL = https://login.microsoftonline.com/common/v2.0
Client ID = XYZ1234
Client Secret = ZDFSDF
Email Domains = example.gov, partner.org

[Google IdP]
Type = OPENID_CONNECT
URL = https://accounts.google.com
Client ID = XYZ1234
Client Secret = ZDFSDF
Email Domains = gmail.com, bedatadriven.com

[AD IdP]
Type = ADSI

Note that the Provider ID, "My Azure" and "Google" in the examples above, are arbitrary. You may choose any name matching the pattern [A-Za-z]{1,15}.

The ActivityInfo self-managed server supports two types of Identity Providers: OpenID Connect and ADSI.

OpenID Connect Providers

For OpenID Connect providers, the following keys are required:

Key Description
Type OPENID_CONNECT
URL The OpenID connect base URL
Client ID The provider-issued Client ID
Client Secret The provider-issued Client Secret
Email domains A comma-seperated list of email domains that should authenticate through this provider.

ADSI Providers

ActivityInfo also support Single-Sign On (SSO) via the Active Directory Service Interface (ADSI), which is available on Windows Servers joined to a domain.

Key Description
Type ADSI

External API Integrations

Key Description Default value
Mapbox Public Access Token The public access token for your Mapbox account. Blank

Security section

Note: these options are available starting in Standalone Server version 4.1.3.

Key Description Default value
Strict Transport Security Either Enabled, Testing, or Disabled.
Adds the Strict-Transport-Security header to all requests, ensuring that users only access ActivityInfo over a secure, encrypted connection.
Disabled
Account Disclosure Either Enabled or Disabled.
Determines whether the server is allowed to disclose whether a user account exists or not. If enabled, the server will inform users when their email is incorrect, or not registered with the system, which makes ActivityInfo more accessible. However, it does allow attackers to determine whether a given user has an account or not.
Enabled
XSS Protection Either Enabled or Disabled.
Determines whether the server sends the X-XSS-Protection header with the value 1; mode=block. This header is deprecated and not recommend as it may block legitimate requests.
Disabled

Using environment variables

Starting in version 4.0.15, ActivityInfo can also read some settings from environment variables, in the form "ACTIVITY_{SECTION}_{KEY NAME}", where spaces are replaced with underscores.

For example:

  • ACTIVITYINFO_SERVER_HTTP_PORT
  • ACTIVITYINFO_SERVER_HTTPS_PORT
  • ACTIVITYINFO_SERVER_HTTPS_PROXY
  • ACTIVITYINFO_DATA_DATA_DIRECTORY
  • ACTIVITYINFO_MAIL_ENABLED
  • ACTIVITYINFO_MAIL_SENDER_ADDRESS
  • ACTIVITYINFO_MAIL_HOST
  • ACTIVITYINFO_MAIL_PORT

If a key is present in both the configuration file and an environment variable, the configuration file takes precedence.