In OpenID Connect, the ID token is a cryptographically signed, self-contained token which allows resource owners to authorize access without a call to the authorization server. So, if the Authorization server isn't necessary to validate the token, how can it be revoked in a session management scenario? It seems like the only thing that can be revoked is the refresh token at which point the ID token would just expire and the user would have to reauthenticate. Is this correct? Also, does it even make sense for OpenID Connect Provider/Server to store the token at all as it hands it off?
相关问题
- How to verify laravel passport api token in node /
- Obtaining Refresh Token from lepture/Authlib throu
- Oidc client js: silent access token renew breaks b
- Angular 6 change component if user is logged in
- “Invalid_grant” response when use Twinfield Openid
相关文章
- .NET Framework MVC and Web Api Auth JWT
- Facebook Login With WP JWT Auth
- Angular 5 HTTP Client has “Authorization” missing
- React - How to check if JWT is valid before sendin
- Didn't find publicKey for kid ,Keycloak?
- How to set Claims from ASP.Net OpenID Connect OWIN
- How to get Bearer token from a request in Laravel
- JWT/LARAVEL token expired
The
id_token
cannot be explicitly revoked because of the reasons that you mention: it is self-contained and can be used without dependency on the Provider. However, a typical usage in web applications is to use theid_token
upon receipt to create an application session, store the relevant information from theid_token
in the session and then to discard theid_token
itself. That application session can be terminated upon request from the Provider by implementing the OpenID Connect Session Management extension, see: https://openid.net/specs/openid-connect-session-1_0.html. In this web SSO use case theid_token
lifetime would be limited since it is one-time usage only.