OIDC and Invalid authorization request state #9831
-
Hi, I am having some strange behaviour regarding OIDC configuration with SSO with my self-hosted Budibase. Indeed, I am experencing this erratic error on bdibase-worker when I try to login: What is strange is that if I refresh the login page and try to sign in again on budibase, the OIDC connection and SSO works. So it looks that fresh new logins are being denied at first connection. The successive logins do work. I have configured OIDC with the following parameters: When analyzing the authentication flow when connecting, it does look that the state parameter is not URL encoded correctly when coming back from the OIDC server: Auth request sent from client: Answer from Auth request: Could that be the issue ? Thanks in advance for any help |
Beta Was this translation helpful? Give feedback.
Replies: 3 comments 1 reply
-
Hey @Nephilim84 What OIDC provider are you using? A video recording of the problem or some screenshots could be helpful for us to investigate as well. |
Beta Was this translation helpful? Give feedback.
-
Hi @melohagan , It looks like that the url encoding is missing somewhere so that the special characters contained in the state GET header is not correctly decoded by budibase-worker. When a correct login is achieved, no special character appear in the state header so the authentication payload is correctly validated by the budibase-worker: Hope this brings more understanding on this issue. |
Beta Was this translation helpful? Give feedback.
-
Beta Was this translation helpful? Give feedback.
Hi @melohagan ,
Thanks for the quick reply, I am using F5 OIDC server to communication with our internal AD and allow SSO authentication.
Here is a snapshot of an auth failed request flow:
It looks like that the url encoding is missing somewhere so that the special characters contained in the state GET header is not correctly decoded by budibase-worker.
When a correct login is achieved, no special character appear in the state header so the authentication payload is correctly validated by the budibase-worker:
Hope this brings more understanding on this issue.