mirror of
https://github.com/plankanban/planka.git
synced 2026-02-05 00:39:58 +03:00
[Bug]: Entra ID OIDC not working #879
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @XenoUniv3rse on GitHub (Dec 5, 2025).
Where is the problem occurring?
I encountered the problem while interacting with the server (Backend)
What browsers are you seeing the problem on?
Brave
Current behavior
I added the var to the docker compose file and I can see the "log in with SSO" button. When I click on the button, i get an "unknown error" and looking at the logs I see ". I dont see any logs in the docker container
Desired behavior
No response
Steps to reproduce
Enable Entra ID SSO and try to log in.
Other information
Here is my env var setup in docker compose file:
- OIDC_ISSUER=https://login.microsoftonline.com/${ENTRA_TENANT_ID}/v2.0
- OIDC_CLIENT_ID=${ENTRA_CLIEN_ID}
- OIDC_CLIENT_SECRET=${ENTRA_SECTRET}
- OIDC_SCOPES=openid email profile
- OIDC_ADMIN_ROLES=${ADMIN_GROUP_ID}
- OIDC_EMAIL_ATTRIBUTE=preferred_username
- OIDC_USERNAME_ATTRIBUTE=preferred_username
- OIDC_ROLES_ATTRIBUTE=groups
- OIDC_ENFORCED=false
@meltyshev commented on GitHub (Dec 5, 2025):
Hi! We currently have limited error reporting on the client side during OIDC authentication. If you don't see any error logs on the server side, it means the failure is happening right after the redirect, and it fails immediately due to missing parameters:
For now, you can try to determine what's going wrong by inspecting the redirect URL. Open your browser's network tab and check the request right after your provider redirects back. Look at the returned URL and see whether it includes an
errorparameter (which will explain what happened), or if it's missing required parameters likecodeorstate.@XenoUniv3rse commented on GitHub (Dec 5, 2025):
This is what i am seeing
10.11.11.170 is my internal reverse proxy server.
@meltyshev commented on GitHub (Dec 5, 2025):
Hm… Then it's a server-side issue. Could you check what the Response contains? It should include the code and message fields.
From what I see in the code, a 422 status is returned only when the
emailornamefields are missing from the claims:You can also try setting
OIDC_CLAIMS_SOURCEtoid_tokento avoid using the userinfo endpoint and extract everything directly from the token. But it's hard to say which approach will work without seeing the full provider configuration and what the userinfo endpoint is actually returning.@XenoUniv3rse commented on GitHub (Dec 5, 2025):
Changing OIDC_CLAIMS_SOURCE to id_token did the trick. Thank you