camunda / camunda-platform-helm

Camunda Platform 8 Self-Managed Helm charts
https://docs.camunda.io/docs/self-managed/overview/
Apache License 2.0
69 stars 127 forks source link

[ENHANCEMENT] Add a custom trust store to Console #1850

Open hamza-m-masood opened 1 month ago

hamza-m-masood commented 1 month ago

Describe the use case:

Research and implement adding a trust store to Console. For example, a use-case for this feature would be to add self-signed certificates to Console. Research is required since Console is not a Java application. It is made with Vue and javascript. The same functionality can't be replicated from other Java apps. Related slack thread: https://camunda.slack.com/archives/C03UR0V2R2M/p1716362967508299

Describe the enhancement/feature:

Currently in other applications, it is possible to add a custom trust store through the use of the JAVA_TOOL_OPTIONS env var. Here is an excerpt from the optimize deployment template:

env:
  - name: JAVA_TOOL_OPTIONS
     value: -Djavax.net.ssl.trustStore=/optimize/certificates/externaldb.jks
volumeMounts:
  - name: keystore
     mountPath: /optimize/certificates/externaldb.jks
     subPath: externaldb.jks
volumes:
   - name: keystore
      secret:
      secretName: {{ .Values.global.elasticsearch.tls.existingSecret }}
      optional: false

It would be ideal to have a dedicated folder to store the file with the trust store. Just like there are dedicated folders in other Java based applications.

Desired outcome and acceptance tests:

hamza-m-masood commented 1 month ago

Please let me know if I have missed anything @theburi

kam-uddin commented 3 weeks ago

To workaround the issue, the user can set the environment variable NODE_EXTRA_CA_CERTS to the path of the root cert. This approach is already used by Identity here. This worked for a customer in SUPPORT-22029