Title here
Summary here
The configuration is handled via one single .env
file. A template file is available. This page gives an overview of all available configuration parameters.
Name | Description | Default Value |
---|---|---|
VERSION | Version of this instance. | - |
LOG_LEVEL | Log level for application logging. This only applies to self-developed code. | INFO |
##### Version of this instance.
VERSION=5.1.1-RELEASE
LOG_LEVEL=INFO
Name | Description | Default Value |
---|---|---|
SERVER_NAME | Hostname for the server, e.g. example.de | - |
SERVER_PORT | Port for the server. | 443 |
KEYCLOAK_SERVER_NAME | URL of the Keycloak server, .e.g https://keycloak.example. Avoid trailing slashes. | - |
KEYCLOAK_SERVER_TYPE | Keycloak server type (Internal or External ). Internal is not supported for productive use. | External |
KEYCLOAK_ADMIN_PW | Password for the Keycloak admin user (required if KEYCLOAK_SERVER_TYPE is set to Internal ) | - |
DOCKER_REGISTRY_PREFIX | Docker registry prefix, e.g. artifactory.medic.uni-tuebingen.de/docker-release/ | - |
###################################################################
###################### Server configuration #######################
###################################################################
##### Hostname
# Example: tc03.ext.difuture.imedis.med.tum.de
SERVER_NAME=
##### Port
SERVER_PORT=443
##### URL of the keycloak server
# Example: https://keycloak.example
# Note: Avoid trailing slashes!
KEYCLOAK_SERVER_NAME=
#### Keycloak server type (Internal or External)
# Default: External.
# Note: Use Internal only for testing purposes.
KEYCLOAK_SERVER_TYPE=External
##### Password for the keycloak admin user (must be set if 'KEYCLOAK_SERVER_TYPE'==Internal)
KEYCLOAK_ADMIN_PW=
##### Docker registry prefix (mind the tailing slash!)
# Example: artifactory.medic.uni-tuebingen.de/docker-release/
DOCKER_REGISTRY_PREFIX=
These parameter values match the predefined realm and thus in most cases can be kept as is. They might have to be changed in case the realm is configured manually.
KEYCLOAK_CLIENT_CLIENT_ID_FOR_INTERFACE=trustcenter-interface
KEYCLOAK_CLIENT_RESOURCE_ID_FOR_INTERFACE=trustcenter-facade
KEYCLOAK_CLIENT_RESOURCE_ID_FOR_LEVEL_1_PSN_SERVICE=backend-entitylist
KEYCLOAK_CLIENT_RESOURCE_ID_FOR_LEVEL_1_DEPSN_SERVICE=entitylist-depsn-service
KEYCLOAK_CLIENT_RESOURCE_ID_FOR_LEVEL_1_WEBAPP=entitylist-webapp
KEYCLOAK_CLIENT_RESOURCE_ID_FOR_LEVEL_2_PSN_SERVICE=backend-pseudonymization
KEYCLOAK_CLIENT_RESOURCE_ID_FOR_LEVEL_2_DEPSN_SERVICE=psns-depsn-service
KEYCLOAK_CLIENT_RESOURCE_ID_FOR_LEVEL_2_WEBAPP=pseudonymization-webapp
Name | Description | Default Value |
---|---|---|
GF_SECURITY_ADMIN_PASSWORD | Grafana admin password. | - |
PROMETHEUS_GLOBAL_SCRAPE_INTERVAL | Prometheus scrape interval. | 120s |
MONITORING_METRIC_RESOURCE_COUNT_PATIENT | Number of patients. | true |
MONITORING_METRIC_RESOURCE_COUNT_ENCOUNTER | Number of encounters. | true |
MONITORING_METRIC_RESOURCE_COUNT_REFERENCE | Number of other resources. | true |
MONITORING_METRIC_PSEUDONYM_COUNT_PATIENT | Number of patient pseudonyms per target system. | true |
MONITORING_METRIC_PSEUDONYM_COUNT_ENCOUNTER | Number of encounter pseudonyms per target system. | true |
MONITORING_METRIC_PSEUDONYM_COUNT_REFERENCE | Number of reference pseudonyms per target system. | true |
MONITORING_METRIC_DEPSN_COUNT | Number of DEPSN operations. | true |
MONITORING_SCHEDULING_ENABLED | Indicates if scheduling for multi gauge metrics is enabled. | true |
MONITORING_SCHEDULING_DELAY | Delay in milliseconds for monitoring scheduling. | 1000 |
# Grafana admin password
GF_SECURITY_ADMIN_PASSWORD=
# Prometheus scrape interval
PROMETHEUS_GLOBAL_SCRAPE_INTERVAL=120s
############################################## Simple Gauge Metrics
# Number of patients
MONITORING_METRIC_RESOURCE_COUNT_PATIENT=true
# Number of encounter
MONITORING_METRIC_RESOURCE_COUNT_ENCOUNTER=true
# Number of other resources
MONITORING_METRIC_RESOURCE_COUNT_REFERENCE=true
############################################### Multi Gauge metrics
# Number of patient pseudonyms per target system
MONITORING_METRIC_PSEUDONYM_COUNT_PATIENT=true
# Number of encounter pseudonyms per target system
MONITORING_METRIC_PSEUDONYM_COUNT_ENCOUNTER=true
# Number of reference pseudonyms per target system
MONITORING_METRIC_PSEUDONYM_COUNT_REFERENCE=true
# Number of depsn operations
MONITORING_METRIC_DEPSN_COUNT=true
# Required for multi gauge metrics
MONITORING_SCHEDULING_ENABLED=true
MONITORING_SCHEDULING_DELAY=1000
Name | Description | Default Value |
---|---|---|
MAIL_SERVICE_ENABLED | Enable or disable mail service globally. | false |
MAIL_SERVICE_HOST | Mail server host name, e.g. postout.lrz.de. | - |
MAIL_SERVICE_PORT | Mail server port, e.g. 587. | - |
MAIL_SERVICE_USERNAME | Username associated with the mail server account. | - |
MAIL_SERVICE_PASSWORD | Password associated with the mail server account. | - |
MAIL_SERVICE_FROM_EMAIL | Email address associated with the mail server account. | - |
MAIL_SERVICE_TO_EMAIL | Recipients; a list of email addresses in the correct format, separated by ‘,’, e.g. “user1@tum.de,user2@tum.de”. | - |
# Enable or disable mail service globally
MAIL_SERVICE_ENABLED=false
# Mail server host name, e.g. postout.lrz.de
MAIL_SERVICE_HOST=
# Mail server port, e.g. 587
MAIL_SERVICE_PORT=
# Username associated with the mail server account
MAIL_SERVICE_USERNAME=
# Password associated with the mail server account
MAIL_SERVICE_PASSWORD=
# Email address associated with the mail server account
MAIL_SERVICE_FROM_EMAIL=
# Recipients; a list of email addresses in the correct format, separated by ',', e.g. "user1@tum.de,user2@tum.de"
MAIL_SERVICE_TO_EMAIL=
Name | Description | Default Value |
---|---|---|
SPRING_SECURITY_USER_NAME | Spring security user name. | - |
SPRING_SECURITY_USER_PW | Spring security password. | - |
TC_INTERFACE_CLIENT_SECRET | Client secret of the Keycloak client trustcenter-interface . Needs to be looked up in the Keycloak server defined in KEYCLOAK_SERVER_NAME . | - |
PSN_PARALLELISM_LEVEL | Number of parallel threads used for pseudonymization. Minimum: 1 Maximum: \(0.5*num\_processors\) | 8 |
#### Spring security user
SPRING_SECURITY_USER_NAME=
#### Spring security password
SPRING_SECURITY_USER_PW=
#### Client secret of the keycloak client 'trustcenter-interface'
# Needs to be looked up in the keycloak server defined in 'KEYCLOAK_SERVER_NAME'
TC_INTERFACE_CLIENT_SECRET=
#### Number of parallel threads used for pseudonymization
# Minimum: 1
# Default: 8
# Maximum: 0.5*#available processors
PSN_PARALLELISM_LEVEL=
Name | Description | Default Value |
---|---|---|
LEVEL_1_PSNS_ENABLE_MASTERDATA | Flag indicating whether to process masterdata. | true |
LEVEL_1_PSNS_LIMIT | Limit on the search result, the number of entries that will maximally be shown in the GUI. | 30 |
LEVEL_1_PSNS_ALPHABETS | Alphabets used for pseudonym generation, e.g. “system-1:10:ABC;system-2:15:123ABC”. | - |
LEVEL_1_PSNS_DB_UNAME | Database username for Level-1 PSN Service. | - |
LEVEL_1_PSNS_DB_PW | Database password for Level-1 PSN Service. | - |
LEVEL_1_PSNS_DB_ENC_PW | Encryption password for the database in Level-1 PSN Service. | - |
LEVEL_1_PSNS_ENC_DEFAULT_CASE_ENABLED | Flag indicating whether pseudonyms should be encrypted by default if the target system is unknown. | true |
LEVEL_1_PSNS_ENC_TARGET_SYSTEMS_STRING | String containing target systems for which pseudonym encryption should be enabled or disabled. | - |
LEVEL_1_BF_ENABLED | Flag indicating if Bloomfilter is enabled. | false |
LEVEL_1_BF_BALANCED_SEED | Balanced seed for Bloomfilter. | - |
LEVEL_1_BF_BIRTH_DATE_SEED | Birth date seed for Bloomfilter. | - |
LEVEL_1_BF_BITS_PER_NGRAM | Bits per ngram for Bloomfilter. | - |
LEVEL_1_BF_FIRST_NAME_SEED | First name seed for Bloomfilter. | - |
LEVEL_1_BF_GENDER_SEED | Gender seed for Bloomfilter. | - |
LEVEL_1_BF_LAST_NAME_SEED | Last name seed for Bloomfilter. | - |
LEVEL_1_BF_LENGTH | Length of the Bloomfilter. | - |
###################################################################
###################### Level-1 PSN Service ########################
###################################################################
#### Flag indicating whether to process masterdata
# Note: In the default case, this flag should be set to 'true'. In that case, in addition
# to identifiers, patient masterdata will be stored. Only if this instance is to be used for
# second-level, or project-specific, pseudonymization, should this flag be set to 'false'.
LEVEL_1_PSNS_ENABLE_MASTERDATA=
#### Limit on the search result, the number of entries that will maximally be shown in the GUI
LEVEL_1_PSNS_SLIMIT=30
#### Alphabets used for pseudonym generation
# The string contains alphabets separated by ';'. The alphabets are comprised of the
# three components 'system', 'length' and 'chars' separated by ':'.
# Example: "system-1:10:ABC;system-2:15:123ABC"
LEVEL_1_PSNS_ALPHABETS=
############################ Database #############################
#### Username
LEVEL_1_PSNS_DB_UNAME=
#### Password
LEVEL_1_PSNS_DB_PW=
#### Encryption password
LEVEL_1_PSNS_DB_ENC_PW=
###################### Transport encryption #######################
#### Flag indicating whether pseudonyms (created from 'v1/process') should
# be encrypted by default. This flag applies to queries sent to 'v1/process' without specifying
# a target system or in case the target system is unknown.
# IF set to true, a public key 'default.pubkey' has to be provided in '/config/keys/entitylist'
LEVEL_1_PSNS_ENC_DEFAULT_CASE_ENABLED=true
#### String containing target system, for which pseudonym encryption should be enabled or disabled.
# Example: test-system;test-system-2 (systems have to be separated by semicolon.
# Important: IF a target system is specified here, a public key '<target-system>.pubkey' can be provided
# in '/config/keys/entitylist', which will then be used to encrypt the corresponding pseudonym. If no key
# is provided, encryption will be turned of for this target system.
LEVEL_1_PSNS_ENC_TARGET_SYSTEMS_STRING=
####################### Bloomfilter config ########################
LEVEL_1_BF_ENABLED=false
LEVEL_1_BF_BALANCED_SEED=
LEVEL_1_BF_BIRTH_DATE_SEED=
LEVEL_1_BF_BITS_PER_NGRAM=
LEVEL_1_BF_FIRST_NAME_SEED=
LEVEL_1_BF_GENDER_SEED=
LEVEL_1_BF_LAST_NAME_SEED=
LEVEL_1_BF_LENGTH=
Name | Description | Default Value |
---|---|---|
DOUBLE_PSEUDONYMIZATION | Flag indicating whether this instance should run with two-level pseudonymization. | false |
LEVEL_2_PSNS_LIMIT | Limit on the search result, the number of entries that will maximally be shown in the GUI. | 30 |
LEVEL_2_PSNS_ALPHABETS | Alphabets used for pseudonym generation. | - |
LEVEL_2_PSNS_DB_UNAME | Database username for Level-2 PSN Service. | - |
LEVEL_2_PSNS_DB_PW | Database password for Level-2 PSN Service. | - |
LEVEL_2_PSNS_DB_ENC_PW | Encryption password for the database in Level-2 PSN Service. | - |
LEVEL_2_PSNS_ENC_DEFAULT_CASE_ENABLED | Flag indicating whether pseudonyms should be encrypted by default if the target system is unknown. | true |
LEVEL_2_PSNS_ENC_TARGET_SYSTEMS_STRING | String containing target systems for which pseudonym encryption should be enabled or disabled. | - |
###################################################################
###################### Level-2 PSN Service ########################
# Note: This whole section is only relevant, if one single trustcenter
# instance should perform 2-tier-pseudonymization (IDAT->PID, PID->PSN).
# In most cases, the remainder of the parameters can be omitted.
###################################################################
#### Flag indicating whether this instance should run with two-level pseudonymization
#### Set 'true' to enable. 'false' is default.
DOUBLE_PSEUDONYMIZATION=false
#### Limit on the search result, the number of entries that will maximally be shown in the GUI
LEVEL_2_PSNS_SLIMIT=30
#### Alphabets used for pseudonym generation
LEVEL_2_PSNS_ALPHABETS=
############################ Database #############################
#### Username
LEVEL_2_PSNS_DB_UNAME=
#### Password
LEVEL_2_PSNS_DB_PW=
#### Encryption password
LEVEL_2_PSNS_DB_ENC_PW=
###################### Transport encryption #######################
#### Flag indicating whether pseudonyms (created from 'v1/process') should
# be encrypted by default. This flag applies to queries sent to 'v1/process' without specifying
# a target system or in case the target system is unknown.
# IF set to true, a public key 'default.pubkey' has to be provided in '/config/keys/psns'
LEVEL_2_PSNS_ENC_DEFAULT_CASE_ENABLED=true
#### String containing target system, for which pseudonym encryption should be enabled or disabled.
# Example: test-system;test-system-2 (systems have to be separated by semicolon.
# Important: IF a target system is specified here, a public key '<target-system>.pubkey' can be provided
# in '/config/keys/psns', which will then be used to encrypt the corresponding pseudonym. If no key
# is provided, encryption will be turned of for this target system.
LEVEL_2_PSNS_ENC_TARGET_SYSTEMS_STRING=
Name | Available since |
---|---|
VERSION | v3.0.0 |
LOG_LEVEL | v5.1.0 |
SERVER_NAME | v1.0.0 |
SERVER_PORT | v1.0.0 |
KEYCLOAK_SERVER_NAME | v1.1.0 |
KEYCLOAK_SERVER_TYPE | v1.1.0 |
KEYCLOAK_ADMIN_PW | v1.2.1 |
DOCKER_REGISTRY_PREFIX | v1.3.0 |
KEYCLOAK_CLIENT_CLIENT_ID_FOR_INTERFACE | v4.0.0 |
KEYCLOAK_CLIENT_RESOURCE_ID_FOR_INTERFACE | v4.0.0 |
KEYCLOAK_CLIENT_RESOURCE_ID_FOR_LEVEL_1_PSN_SERVICE | v4.0.0 |
KEYCLOAK_CLIENT_RESOURCE_ID_FOR_LEVEL_1_DEPSN_SERVICE | v4.0.0 |
KEYCLOAK_CLIENT_RESOURCE_ID_FOR_LEVEL_1_WEBAPP | v4.0.0 |
KEYCLOAK_CLIENT_RESOURCE_ID_FOR_LEVEL_2_PSN_SERVICE | v4.0.0 |
KEYCLOAK_CLIENT_RESOURCE_ID_FOR_LEVEL_2_DEPSN_SERVICE | v4.0.0 |
KEYCLOAK_CLIENT_RESOURCE_ID_FOR_LEVEL_2_WEBAPP | v4.0.0 |
GF_SECURITY_ADMIN_PASSWORD | v5.0.0 |
PROMETHEUS_GLOBAL_SCRAPE_INTERVAL | v5.0.0 |
MONITORING_METRIC_RESOURCE_COUNT_PATIENT | v5.0.0 |
MONITORING_METRIC_RESOURCE_COUNT_ENCOUNTER | v5.0.0 |
MONITORING_METRIC_RESOURCE_COUNT_REFERENCE | v5.0.0 |
MONITORING_METRIC_PSEUDONYM_COUNT_PATIENT | v5.0.0 |
MONITORING_METRIC_PSEUDONYM_COUNT_ENCOUNTER | v5.0.0 |
MONITORING_METRIC_PSEUDONYM_COUNT_REFERENCE | v5.0.0 |
MONITORING_METRIC_DEPSN_COUNT | v5.0.0 |
MONITORING_SCHEDULING_ENABLED | v5.0.0 |
MONITORING_SCHEDULING_DELAY | v5.0.0 |
MAIL_SERVICE_ENABLED | v5.1.0 |
MAIL_SERVICE_HOST | v5.1.0 |
MAIL_SERVICE_PORT | v5.1.0 |
MAIL_SERVICE_USERNAME | v5.1.0 |
MAIL_SERVICE_PASSWORD | v5.1.0 |
MAIL_SERVICE_FROM_EMAIL | v5.1.0 |
MAIL_SERVICE_TO_EMAIL | v5.1.0 |
SPRING_SECURITY_USER_NAME | v1.1.0 |
SPRING_SECURITY_USER_PW | v1.1.0 |
TC_INTERFACE_CLIENT_SECRET | v1.1.0 |
PSN_PARALLELISM_LEVEL | v5.0.0 |
LEVEL_1_PSNS_ENABLE_MASTERDATA | v1.1.0 |
LEVEL_1_PSNS_LIMIT | v1.1.0 |
LEVEL_1_PSNS_ALPHABETS | v2.1.0 |
LEVEL_1_PSNS_DB_UNAME | v1.1.0 |
LEVEL_1_PSNS_DB_PW | v1.1.0 |
LEVEL_1_PSNS_DB_ENC_PW | v1.1.0 |
LEVEL_1_PSNS_ENC_DEFAULT_CASE_ENABLED | v3.0.0 |
LEVEL_1_PSNS_ENC_TARGET_SYSTEMS_STRING | v3.0.0 |
LEVEL_1_BF_ENABLED | v2.1.0 |
LEVEL_1_BF_BALANCED_SEED | v2.1.0 |
LEVEL_1_BF_BIRTH_DATE_SEED | v2.1.0 |
LEVEL_1_BF_BITS_PER_NGRAM | v2.1.0 |
LEVEL_1_BF_FIRST_NAME_SEED | v2.1.0 |
LEVEL_1_BF_GENDER_SEED | v2.1.0 |
LEVEL_1_BF_LAST_NAME_SEED | v2.1.0 |
LEVEL_1_BF_LENGTH | v2.1.0 |
DOUBLE_PSEUDONYMIZATION | v5.0.0 |
LEVEL_2_PSNS_LIMIT | v1.1.0 |
LEVEL_2_PSNS_ALPHABETS | v2.1.0 |
LEVEL_2_PSNS_DB_UNAME | v1.1.0 |
LEVEL_2_PSNS_DB_PW | v1.1.0 |
LEVEL_2_PSNS_DB_ENC_PW | v1.1.0 |
LEVEL_2_PSNS_ENC_DEFAULT_CASE_ENABLED | v3.0.0 |
LEVEL_2_PSNS_ENC_TARGET_SYSTEMS_STRING | v3.0.0 |