Quarkus OIDC: Session invalidated when ID token expires? #50993
-
|
Hi everyone, I’m using Quarkus with OIDC and I’m struggling with the expiration of the ID token. In my case, I must use an Identity Provider that returns the ID token only after the initial login, but it cannot be refreshed using the token endpoint (a request to the token endpoint with grant_type=refresh_token returns only the access_token and refresh_token). When the ID token expires, the user session is invalidated and the user is redirected to the login page. Because of the IdP configuration, this login requires a new OTP, so the redirect is visible to the user and disrupts the experience. I tried adjusting some Quarkus OIDC properties to make the application not depend on the ID token, but I couldn’t achieve the desired behavior. I also tried setting quarkus.oidc.token.refresh-expired=false and removing quarkus.oidc.token.refresh-token-time-skew, but the problem persisted. According to the OpenID specification, an IdP is not required to return a new ID token on refresh — but I’m not sure if Quarkus has any specific restrictions or assumptions related to this behavior. I also checked this discussion: #29061, but I couldn’t find anything that helped in my case, and I wasn’t sure if it was appropriate to continue that conversation. Does anyone have any ideas or suggestions on how to handle this scenario? This is my first discussion on this project, so if something is missing or misplaced, please let me know and I’ll update or move it accordingly. Thanks in advance! |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 11 replies
-
|
/cc @pedroigor (oidc), @sberyozkin (oidc) |
Beta Was this translation helpful? Give feedback.
@cattoMarco FYI, #51064