Configuration of Solution Designer and Solution Hub
Configuration of the Installation
In order to configure the installed components, the k5-configurator API
must
be used. With the help of this API, you can specify the environment specific values
for this installation.
The k5-configurator API
provides REST services for reading and updating
configurations for the Solution Hub
and the Solution
Designer
. The k5-configurator API
is part of the
Solution Hub
installation and its Helm chart.
k5-configurator API
, a valid OpenShift token is
needed. An OpenShift token can be retrieved through login at the OpenShift
WebConsole --> Copy login command
. The required permissions are
depending on the used API call and can be found within this documentation.The configurations can be done easily with the provided Swagger UI or any other tool for calling APIs (like cURL, Postman).
https://k5-configurator.<domain>
The exact URL can
be found within the route named k5-configurator
. It can be
easily retrieved by executing
oc get route k5-configurator -n <namespace>
, whereby
<namespace>
points to the namespace, where the Solution
Hub is installed. Configuration of Financial Services Workbench
For a new installation at least, the following configuration must be provided:
Iam: Configures the properties to access the Identity and Access Management system (IAM), respectively Keycloak
Master key: Configures the master key, needed to have encryption at rest for some sensitive user data, like Git tokens or API keys
MongoDb: Configures the connection to the Mongo database, which is used by the Solution Designer
S3Storage:Configures properties to access an S3-Storage, which is used as a persistence layer for the k5-marketplace
Truststore: Updates the truststore, which holds a bunch of certificates, that should be trusted within FSW
k5-configurator
API
are not necessary at installation time, all values must be
configured in the end to get Financial Services Workbench working.IAM
-
Use
PUT
method Update properties for accessing iam for updating the IAM configurations
Request Parameters
Parameter | Type | Description |
data
|
Body parameter (JSON) | The configuration values (body parameters) |
Configuration Parameters (body parameters)
The following table lists the configurable parameters for the IAM.
Parameter | Description |
adminUsername
|
The IAM admin’s username |
adminPassword
|
The IAM admin’s password |
hostname
|
The hostname of the IAM provider |
realm
|
The default realm name |
Authorization
An OpenShift token with following permissions must be provided:
- secrets: get, create, update
- k5client: list, update
- k5realm: list, update
Master key
-
Use
PUT
method Update properties for the master key for updating the master key
Request Parameters
Parameter | Type | Description |
data
|
Body parameter (JSON) | The configuration values (body parameters) |
Configuration Parameters (body parameters)
This information needs to be provided by the customer side. There are no further restrictions on the key but it is recommended to provide a master key that matches the common AES rules. The following table lists the configurable parameters for the master key.
Parameter | Description |
key
|
The master key. It is not allowed to use empty values for this, as it would cause security risks. Data (especially user tokens) would not be encrypted and hence stored in plaintext in the database, which must not happen. |
Authorization
An OpenShift token with following permissions must be provided:
- secrets: get, create, update
MongoDB
-
Use
PUT
method Update properties for accessing solution designer mongodb for updating the mongoDB connection
Request Parameters
Parameter | Type | Description |
data
|
Body parameter (JSON) | The configuration values (body parameters) |
Configuration Parameters (body parameters)
The following table lists the configurable parameters for the mongoDB connection.
Parameter | Description |
connectionString
|
The mongoDB connectionString for the Solution Designer |
Authorization
An OpenShift token with following permissions must be provided:
- secrets: get, create, update
S3 Storage
-
Use
PUT
method Update properties for accessing s3 storage for updating the S3 storage
Request Parameters
Parameter | Type | Description |
data
|
Body parameter (JSON) | The configuration values (body parameters) |
Configuration Parameters (body parameters)
This information needs to be provided from the customer side. You can only use the default S3 Storage. The following table lists the configurable parameters for the S3 storage.
Parameter | Description |
accesskey
|
Access key of the S3 storage with a restriction of a minimum key length of 3 characters. It is not allowed to use an empty value for this, as it would cause security risks. The S3 Storage would allow anonymous access without that. |
secretkey
|
Secret key of the S3 storage with a restriction of a minimum key length of 8 characters. It is not allowed to use an empty value for this, as it would cause security risks. The S3 Storage would allow anonymous access without that. The S3 Storage would allow anonymous access without that. |
Authorization
An OpenShift token with following permissions must be provided:
- secrets: get, create, update
Trust-Store
-
Use
PUT
method Update entries within the truststore for updating the key-value pairs within the truststoreWarning: Calling that API overrides the current truststore!
Request Parameters
Parameter | Type | Description |
data
|
Body parameter (JSON) | The configuration values (body parameters) |
Configuration Parameters (body parameters)
The body parameters contain key-value pairs. It is possible to provide the value of each entry as a base64 string, e.g.:
{"identity":"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSS4uLndVQQpNRW8uLi5RUUQKRXhwLi4udz
B5Ck1ERS4uLjJsegpMbU4uLi5sMncvbwpqQkMuLi40b0sKUWMxLi4uPT0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtL
S0tLQotLS0tLUJFR0lOIENFUlRJRklDQVRFLS0tLS0KTUlJLi4uQU1UCkRrUi4uLmxvdwpTakVMLi4uQU1UCkdr
eC4uLmc9PQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0t"}
Authorization
An OpenShift token with following permissions must be provided:
- secrets: get, create, update
Config Maps Configuration
The config-maps-controller in the k5-configurator API
allows
configuration of all config maps that are provided through the Financial Services
Workbench. Config maps allow a very detailed level of control for the components.
Any adjustments to the initial values, might have unwanted side-effects.
Configuration changes within the config map section is not mandatory. Nevertheless, the most important options are listed below:
-
GET
List all available config maps: Lists all config maps that can be configured by thek5-configurator API
. Includes the names of the config maps and their contents to proceed with different APIs.
-
PUT
Update an existing config map: Updates the content of a config map. -
DELETE
Reset a config map to the initial values of the installation: Resets a config map to the initial values. -
PUT
Update a key-value pair in the config map: Updates an existing entry within a config map. -
POST
Create a new key-value pair in the config map: Creates a not-existing entry within a config map. -
DELETE
Delete a key-value pair in the config map: Removes an entry from a config map.
GET all config maps
-
Use
GET
method List all available config maps for getting all config maps that can be configured by thek5-configurator API
Authorization
An OpenShift token with following permissions must be provided:
- configmaps: list
PUT update config map
-
Use
PUT
method Update an existing config map for updating a config map
Request Parameters
Parameter | Type | Description |
config-map-name
|
Path parameter | Name of the config map |
data
|
Body parameter (JSON) | The new data the config map should contain (body parameters) |
Configuration Parameters (body parameters)
Authorization
An OpenShift token with following permissions must be provided:
- configmaps: get, update
DELETE reset a config map
-
Use
DELETE
method Reset a config map to the initial values of the installation for resetting a config map to its initial values
Request Parameters
Parameter | Type | Description |
config-map-name
|
Path parameter | Name of the config map |
Authorization
An OpenShift token with following permissions must be provided:
- configmaps: get, update
PUT update an entry in a config map
-
Use
PUT
method Update a key-value pair in the config map for updating a specific key-value pair within a config map
Request Parameters
Parameter | Type | Description |
config-map-name
|
Path parameter | Name of the config map |
key
|
Path parameter | Name of the key |
data
|
Body parameter (JSON) | The new value for the key (body parameters) |
Configuration Parameters (body parameters)
The body parameters contain one mandatory field:
Parameter | Description |
value
|
The new value |
Authorization
An OpenShift token with following permissions must be provided:
- configmaps: get, update
POST create an entry in a config map
-
Use
POST
method Create a new key-value pair in the config map for creating a new key-value pair within a config map
Request Parameters
Parameter | Type | Description |
config-map-name |
Path parameter | Name of the config map |
key
|
Path parameter | Name of the key |
data
|
Body parameter (JSON) | The value for the key (body parameters) |
Configuration Parameters (body parameters)
The body parameters contain one mandatory field:
Parameter | Description |
value
|
The new value |
Authorization
An OpenShift token with following permissions must be provided:
- configmaps: get, update
DELETE delete an entry in a config map
-
Use
DELETE
method Delete a key-value pair in the config map for deleting an existing key-value pair within a config map
Request Parameters
Parameter | Type | Description |
config-map-name |
Path parameter | Name of the config map |
key
|
Path parameter | Name of the key |
Authorization
An OpenShift token with following permissions must be provided:
- configmaps: get, update