Table of Contents

Overview

This is the main configuration file for the system, and in general, this can be modified during runtime using for example the administrative configuration UI. For details on how the system is booted and how the configuration files are applied, see the documentation on how bootstrapping works.

Sections

The configuration file is written in JSON. There is one root-object - each property in the root object is a section, and the sections are pre-defined and various parts of the system can be configured in these sections.

Structure

  • In each section, there is an array of JSON objects
  • Each JSON object is a configuration entry - this is what you configure
  • In general, the values are strings, even for numerical or boolean values, ex. "true" instead of true

Example

The example isn't complete and is not functional as-is

{
  "MODULES": [
    {
      "name": "com.phenixidentity~phenix-ca",
      "scope": "global",
      "singleton": "true",
      "config": {
        "enableHttp": "false"
      },
      "enabled": "true",
      "created": "2024-02-02T10:19:15.458Z",
      "id": "6c4ce19b-4bcc-4904-b8df-d7620b1eee2e"
    },
    {
      "name": "com.phenixidentity~phenix-saml",
      "enabled": "true",
      "config": {
        "guide_ref": "6bbc6990-96ec-4b7a-99d1-2aa693f93f5a"
      },
      "created": "2024-02-13T13:23:32.967Z",
      "id": "54a21a17-a495-4148-b760-85437bc46e6e"
    }
  ],
  "CONNECTIONS": [
    {
      "type": "jdbc",
      "name": "postgresql-test",
      "guide_ref": "acb0fe6b-ae13-4f06-9a3c-80a382e8b9cd",
      "guide_id": "guides.connections.jdbc",
      "config": {
        "driver": "org.postgresql.Driver",
        "url": "jdbc:postgresql://10.0.5.25:5432/template1",
        "username": "postgres",
        "password": "{enc}C8b/APIMgo92dxV3CcdRNErKoGEvosN903t1LeVZdhM=",
        "auto_commit": "true",
        "read_only": "false",
        "pool_initial_size": "1",
        "pool_max_size": "4"
      },
      "created": "2024-03-26T19:00:07.980Z",
      "id": "ccb794ba-d5e7-4b57-b584-dad9e1700652"
    }
  ]
}

In the example above, there are two sections:

  • MODULES
  • CONNECTIONS

In each section, there are an array of configuration objects - in this example: