-
Notifications
You must be signed in to change notification settings - Fork 481
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Desktop Modeler fails to deploy to self-managed Cluster with Identity (415, Unsupported Media Type) #3152
Comments
I tried this running locally in Docker with the default docker-compose.yaml. For the
For the
All combinations produced the same error given above. Modeler shows this error message: |
Hi @barmac, I'm not sure this is related to SSL. I did not specifically configure any certificates to set up SSL in my C8-SM instance. I do not think C8-SM configures SSL by default. Further to that, I also cannot deploy a model to the same C8-SM instance using zbctl. Am I doing something wrong or is it simply impossible to deploy to a C8-SM instance running with Identity (with or without SSL), unless you use a Java application? |
Not sure if we can fix the issue in the Modeler if the problem lies within the client (either zbctl, or zeebe-node which we use in the app). Thanks for the insights so far. I will try to reproduce this problem and will get back with the findings. |
Thank you @barmac would be great if you manage to reproduce it and pinpoint the problem, that will enable us to delegate the responsibility for fixing this issue to the right people. |
OK I am actively looking into this. I will get back to you with the results. |
So far I was able to setup a k8s cluster with Identity enabled. However, with port-forwarding I can deploy directly to Zeebe without any oauth configuration 🐒 . I cannot connect to Zeebe due to error:
I suspect that this is because we enforce SSL for oAuth connection, but would need to investigate this yet. |
I was able to reproduce the exact error as shared by @rob2universe in the issue (415 Unsupported Media Type). This was on v5.3.0. When I switched to v5.4.1 (current), with the same credentials the client reported 401 Unauthorized with error |
I checked the log thoroughly and it seems that app used an old secret even when I changed the input value, so that would explain the 401 error. |
It may also be that oAuth is broken in v5.4.1 based on the changelog of the zeebe client we use: https://github.com/camunda-community-hub/zeebe-client-node-js/blob/master/CHANGELOG.md#fixes |
@rob2universe Are you able to reproduce this with Camunda Modeler v5.4.1? |
I built a minimal example for
The minimal exampleconst { ZBClient } = require('zeebe-node');
main();
async function main() {
const zbc = new ZBClient({
onConnectionError(error) {
console.error('Connection error', error);
},
onReady(event) {
console.log('Connected to Zeebe', event);
}
});
const topology = await zbc.topology();
console.log(topology);
} I will check if the problem persists with the latest version of |
With |
OK now I was able to reproduce 415. Some research indicates it's a problem with the request sent to Keycloak: keycloak/keycloak#11971. Notice the error part: |
In Camunda Modeler 5.4.1, |
Closed via #3242 |
@barmac I guess it does not hurt if we cut a patch for it? |
Shall I do this? |
Feel free to do it! |
Was not able to follow-up, unfortunately. |
The fix was released with v5.4.2 |
Describe the bug
After setting the deployment parameters for self-managed and oAuth, the deployment fails. The Modeler log shows:
01:39:00,341 WARN [org.keycloak.events] (default task-11) type=LOGIN_ERROR,
It seems worth noting that the client id her does not reflect the the Id entered in the modeler ("java") and the auth_type may need to be "client credentials" instead of code.
Authentication from curl or Postman works, e.g:
curl --location --request POST 'http://localhost:18080/auth/realms/camunda-platform/protocol/openid-connect/token' --header 'Content-Type: application/x-www-form-urlencoded' --data-urlencode 'client_id=java' --data-urlencode 'client_secret=xyz' --data-urlencode 'grant_type=client_credentials'
{"access_token":"shortened-it_works","expires_in":300,"refresh_expires_in":0,"token_type":"Bearer","not-before-policy":0,"scope":"profile email"}
Steps to reproduce
Expected behavior
Deployment succeeds if parameters are set correctly.
Meaningful connection or authentication error is shown if parameters are incorrect (not "unknown error")
Environment
Additional context
No response
Related to SUPPORT-14704
The text was updated successfully, but these errors were encountered: