Version 2021

Collaboration Server Configuration Properties

Settings for the Collaboration server can be changed by editing the config.json file. All parameters are case sensitive and must be entered correctly for changes to take effect.

The config.json can be found in:

Windows: <INSTALL_PATH>\MicroStrategy\Collaboration Server

Linux: <INSTALL_PATH>/CollaborationServer

This file includes the following properties:

Property Specifies

Port and URL Properties

port The communication port number
dataSource

The dataSource object includes the following properties:

  • username = the username to connect to Postgres
  • password = the encrypted password to connect to Postgres
  • host = this parameter specifies the IP or hostname of a remote Postgres server. By default, the Collaboration server tries to connect to the local Postgres server.
  • port = this parameter specifies the port of the Postgres server. By default, the Collaboration server tries to connect to the 5432 port of the Postgres server
  • encryptionKeyFile = the file which includes the key to encrypt or decrypt the password
  • sslRootCertificate = this parameter specifies the path of a file containing SSL certificate authority (CA). If the file exists, the server's certificate will be verified to be signed by one of these authorities
  • sslClientCertFile = this parameter specifies the file location of the client SSL certificate
  • sslClientKeyFile = this parameter specifies the file location for the secret key used for the client certificate

authorizationServerUrl

The URL endpoint of the MicroStrategy Library server. It should end with /api.

notificationBaseUrl

The address of the Library server when generating email notifications. This property is available starting in 2020 Update 2.

Use this property for certain authentication configurations, like Trusted authentication, to store the address of the authentication server. If this property is not set, the address in authorizationServerUrl is used.

TLS Support Properties
enableTls

Whether TLS support is enabled

If true, TLS support is enabled, assuming that either of the following pairs of fields are specified:

  • privateKeyFile and publicCertFile
  • keystoreFile and passphrase

The keystoreFile and passphrase properties have a higher priority than the privateKeyFile and publicCertFile fields.

If omitted or false, then TLS support is disabled.

privateKeyFile The path to the private key.
publicCertFile The path to the public certificate.
keystoreFile The path to the PKCS12 or PFX keystore file.
passphrase The passphrase used in the Certificate Signing Request (CSR)
trustedCerts

An array of paths (relative to the current directory) of trusted certificate files.

This is only needed when Library server is in HTTPS but with a private Root CA certificate or a self-signed certificate.

We do not need all certificates in the chain, but only the Root CA certificate.

Each Root CA certificate needs to be in its own PEM file.

Clustering Properties
scaling The type of scaling to use. Values include "horizontal", "vertical", and "none". If omitted scaling defaults to "vertical", if "cpus" is greater than 1. Otherwise, it defaults to "none".
redisServerUrl The URL of the Collaboration Cluster Cache (only supported with Redis Server). Only required if scaling is horizontal.
cpus The maximum number of worker processes to create on this machine. A number greater than 0 specifies the number of worker processes to create. A value of -1 indicates to create one worker process for each core on the machine. Defaults to 1.
User and Group Cache Properties
resetCacheInterval

A non-negative integer which specifies the interval (in minutes) to reset the users and groups information cache. Using a value of 0 applies the default time of 1440 minutes(24 hours).

General Configuration Properties

logging

Whether diagnostic logging is enabled for the Collaboration server.

socketlo

An object which holds socket.io settings. Can set pingInterval and pingTimeout. { "pingInterval": 25000, "pingTimeout": 30000 }

Library Administration Support Properties

secretKey

To establish trusted communication between Library server and Collaboration server, the value should be the same as that of identityToken.secretKey in the Library server configuration file.

This trusted communication is required for configuring the Collaboration server from Library Admin.

If the MicroStrategy Collaboration server is installed separately from the MicroStrategy Library, you need to manually configure the connection information by modifying configuration property file config.json. See the appropriate Manually Configure Collaboration Server on a Windows Server or Manually Configure Collaboration Server on a Linux Server section for more information.

By default, the Library is accessed using the following URL and communication port:

http://localhost:8080/MicroStrategyLibrary

By default, the Collaboration server is accessed using the following URL and communication port:

http://localhost:3000

To check the status of the Collaboration server, you can visit this URL:

http://localhost:3000/status

This only works from the machine where the MicroStrategy Collaboration server is installed. To access it from another machine, replace "localhost" with the fully qualified domain name (FQDN) of the machine.

The communication port must be available for Collaboration server to be started.

The communication between components is HTTP, not HTTPS. This deployment is useful for initial testing in a lab environment, but not recommended for production. For a production environment, where security is a priority, it is recommended to implement a secure deployment.