ERROR app:zeebe-api connection check failed {
parameters: { endpoint: { type: 'selfHosted', url: 'http://localhost:26500' } }
} Error: 16 UNAUTHENTICATED: Expected bearer token at header with key [authorization], but found nothing
at callErrorFromStatus (/Applications/Camunda Modeler.app/Contents/Resources/app.asar/node_modules/@grpc/grpc-js/build/src/call.js:31:19)
at Object.onReceiveStatus (/Applications/Camunda Modeler.app/Contents/Resources/app.asar/node_modules/@grpc/grpc-js/build/src/client.js:192:76)
at /Applications/Camunda Modeler.app/Contents/Resources/app.asar/node_modules/@grpc/grpc-js/build/src/call-interface.js:78:35
at Object.onReceiveStatus (/Applications/Camunda Modeler.app/Contents/Resources/app.asar/node_modules/zeebe-node/dist/lib/GrpcClient.js:97:36)
at InterceptingListenerImpl.onReceiveStatus (/Applications/Camunda Modeler.app/Contents/Resources/app.asar/node_modules/@grpc/grpc-js/build/src/call-interface.js:73:23)
at Object.onReceiveStatus (/Applications/Camunda Modeler.app/Contents/Resources/app.asar/node_modules/@grpc/grpc-js/build/src/client-interceptors.js:360:141)
at Object.onReceiveStatus (/Applications/Camunda Modeler.app/Contents/Resources/app.asar/node_modules/@grpc/grpc-js/build/src/client-interceptors.js:323:181)
at /Applications/Camunda Modeler.app/Contents/Resources/app.asar/node_modules/@grpc/grpc-js/build/src/resolving-call.js:99:78
at process.processTicksAndRejections (node:internal/process/task_queues:77:11)
for call at
at ServiceClientImpl.makeUnaryRequest (/Applications/Camunda Modeler.app/Contents/Resources/app.asar/node_modules/@grpc/grpc-js/build/src/client.js:160:32)
at ServiceClientImpl.<anonymous> (/Applications/Camunda Modeler.app/Contents/Resources/app.asar/node_modules/@grpc/grpc-js/build/src/make-client.js:105:19)
at /Applications/Camunda Modeler.app/Contents/Resources/app.asar/node_modules/zeebe-node/dist/lib/GrpcClient.js:272:47 {
code: 16,
details: 'Expected bearer token at header with key [authorization], but found nothing',
metadata: Metadata {
internalRepr: Map(1) { 'content-type' => [Array] },
options: {}
}
}
I do not understand why this error was received, when explicitly using Authentication: None: “‘Expected bearer token at header with key [authorization], but found nothing’”. This was not encountered with the version of modeler that was being used in early 2023 (I don’t recall the version number), but this error is currently being experienced in 5.18.0. How can I get past this error so I can deploy diagrams?
Hi @nathan.loding , thank you for this. I would definitely like to try the 5.19.0 build to see if it’s resolved, although I’m unable to find that in the github releases. Do you have a link where it is publicly available?
Also, regarding zbctl, I believe it is a requirement that a client is set up in keycloak for this sort of usage. Can you confirm?
Apologies, I misread something … the 5.19.0 builds are not available yet. That’s my mistake, apologies.
zbctl works with no authentication. You can just specify the address in the command (either create an environment variable named ZEEBE_ADDRESS or use the --address arg) and it will try to connect with no authentication. (I am trying to test this locally but I have an expired/invalid certificate issue that I need to correct first!)
No problem! When attempting to connect with zbctl, I get the same error:
% zbctl --insecure status --address localhost:26500
Error: rpc error: code = Unauthenticated desc = Expected bearer token at header with key [authorization], but found nothing
Is this something possibly configured in the gateway by default? No changes were made to any values upon installation; this is a plain helm install using the latest charts (8.3.4).
Hi @bdburci - I am back from the holidays now! Because other tools are failing to connect, it’s likely a configuration issue with your gateway. How have you configured your gateway? Are you using Docker or Kubernetes? Can you share your docker-compose or values.yaml file?
I hope you had a great holiday! This was a vanilla install from the latest helm charts, using the helm install camunda camunda/camunda-platform command. Any help is appreciated. Thanks!
Hi @bdburci - in that case, the default installation uses Identity for authentication. I suspect you need to go into Identity, create client credentials, use those to fetch a bearer token, and then you’ll be all set.
I created a client in Identity, and if I check through postman I get a valid token from keycloak with correct permissions, but when I try to connect through desktop modeler using this data I get an error
09:46:21.905 | zeebe | INFO: Set Grpc channel ready timer for 3000ms
ERROR app:zeebe-api connection check failed {
parameters: {
endpoint: {
type: 'selfHosted',
authType: 'oauth',
url: 'http://0.0.0.0:26500',
oauthURL: 'https://keycloak.example.com/auth/realms/camunda-platform/protocol/openid-connect/token',
audience: 'workflow-manager',
scope: undefined,
clientId: '******',
clientSecret: '******'
}
}
} Error: 16 UNAUTHENTICATED: Failed to parse bearer token, see cause for details
at callErrorFromStatus (/Applications/Camunda Modeler.app/Contents/Resources/app.asar/node_modules/@grpc/grpc-js/build/src/call.js:31:19)
at Object.onReceiveStatus (/Applications/Camunda Modeler.app/Contents/Resources/app.asar/node_modules/@grpc/grpc-js/build/src/client.js:192:76)
at /Applications/Camunda Modeler.app/Contents/Resources/app.asar/node_modules/@grpc/grpc-js/build/src/call-interface.js:78:35
at Object.onReceiveStatus (/Applications/Camunda Modeler.app/Contents/Resources/app.asar/node_modules/zeebe-node/dist/lib/GrpcClient.js:97:36)
at InterceptingListenerImpl.onReceiveStatus (/Applications/Camunda Modeler.app/Contents/Resources/app.asar/node_modules/@grpc/grpc-js/build/src/call-interface.js:73:23)
at Object.onReceiveStatus (/Applications/Camunda Modeler.app/Contents/Resources/app.asar/node_modules/@grpc/grpc-js/build/src/client-interceptors.js:360:141)
at Object.onReceiveStatus (/Applications/Camunda Modeler.app/Contents/Resources/app.asar/node_modules/@grpc/grpc-js/build/src/client-interceptors.js:323:181)
at /Applications/Camunda Modeler.app/Contents/Resources/app.asar/node_modules/@grpc/grpc-js/build/src/resolving-call.js:99:78
at process.processTicksAndRejections (node:internal/process/task_queues:77:11)
for call at
at ServiceClientImpl.makeUnaryRequest (/Applications/Camunda Modeler.app/Contents/Resources/app.asar/node_modules/@grpc/grpc-js/build/src/client.js:160:32)
at ServiceClientImpl.<anonymous> (/Applications/Camunda Modeler.app/Contents/Resources/app.asar/node_modules/@grpc/grpc-js/build/src/make-client.js:105:19)
at /Applications/Camunda Modeler.app/Contents/Resources/app.asar/node_modules/zeebe-node/dist/lib/GrpcClient.js:272:47
at process.processTicksAndRejections (node:internal/process/task_queues:95:5) {
code: 16,
details: 'Failed to parse bearer token, see cause for details',
metadata: Metadata {
internalRepr: Map(1) { 'content-type' => [Array] },
options: {}
}
Camunda 8 is deployed in an OpenShift cluster, port 26500 is forwarded through port forward.
zbctl status --insecure gives information about the cluster status.
Hi @D_B_Cooper - probably best to start a new topic with this question. Can you open a new topic, share what version of Camunda you’ve deployed, what version of Desktop Modeler, and how you have Camunda configured (Helm values if possible)? Feel free to tag me in the new topic!