400 Bad Request API error from 'Test connection' button

We are running Rocket Chat in Kubernetes 1.24.5.

Rocket Chat has been deployed with Helm:
| |
| Rocket.Chat Version: 5.3.2 |
| NodeJS Version: 14.19.3 - x64 |
| MongoDB Version: 5.0.10 |
| MongoDB Engine: unknown |
| Platform: linux |
| Process Port: 3000 |
| Site URL: https://rocketchat.bof.fi |
| ReplicaSet OpLog: Enabled |
| Commit Hash: 215a0685a5 |
| Commit Branch: HEAD |
| |

Pods running:
mongodb-0 2/2 Running 0 9d
mongodb-1 2/2 Running 1 (9d ago) 9d
mongodb-arbiter-0 1/1 Running 0 9d
rocketchat-rocketchat-56bb8c9455-ms825 1/1 Running 0 25h

Mongodb version: Chart mongodb-12.1.31 APP VERSION 5.0.10

SSL offloading with self signed cert and haproxy-ingress:
- backend:
name: rocketchat-rocketchat
name: http
path: /
pathType: Prefix

Now when we try to add ldap settings we get back 400 Bad Request error from pressing ‘Test Ldap connection’ button from GUI:

Pressing button: POST /api/v1/ldap.testConnection HTTP/1.1

Response from Rochet Chat:
HTTP/1.1 400 Bad Request
X-Instance-ID: 2BN2YDWx4cAXN5gW3
X-XSS-Protection: 1
X-Content-Type-Options: nosniff
X-Frame-Options: sameorigin
Content-Security-Policy: default-src ‘self’ ; connect-src *; font-src ‘self’ data:; frame-src *; img-src * data: blob:; media-src * data:; script-src ‘self’ ‘unsafe-eval’ ‘sha256-jqxtvDkBbRAl9Hpqv68WdNOieepg8tJSYu1xIy7zT34=’ ; style-src ‘self’ ‘unsafe-inline’
Cache-Control: no-store
Pragma: no-cache
content-type: application/json
access-control-allow-origin: *
access-control-allow-headers: Origin, X-Requested-With, Content-Type, Accept, X-User-Id, X-Auth-Token
Vary: Accept-Encoding
Content-Encoding: gzip
Date: Tue, 20 Dec 2022 13:47:28 GMT
Connection: keep-alive
Keep-Alive: timeout=5
Transfer-Encoding: chunked

Any help?


Can you get any outstanding logs? Remember to increase log verbosity. This is the return of the test, so it will give you the 400 and under the hood, at the logs, might how what exactly happened, even with a LDAP error code.

Let me know if this helps.


I did try to increase log verbosity, but I did not get anything more. In my understanding original POST is already somehow malformed and Rocket newer does any ldap connection. That error response was from tcpdump sniff and system did not try any e.g. ldap connections. Now I can not understand how GUI request can be wrong in a such basic setup without any modification?