Usage of the user's id_token #79
|
I have a general design question considering the user's id_token in the context of a web service. From this document it seems that when a user authenticates, the browser webapp is supposed to store the user's id_token and pass this along with any request made to a protected resource. The UMA user agent/PEP will use this id_token to check if access is allowed. What happens when this id_token is expired? By default it is only valid for 60 minutes. Does this mean that a user has to re-authenticate every 60 minutes to access a protected resource? It is my understanding that id_tokens cannot be refreshed programmatically, unlike access/refresh tokens. So what is the recommended way of using these tokens? |
Replies: 2 comments 3 replies
|
The ID token is used to support the uma flow implemented by the resource guard - ref. https://system-description.docs.eoepca.org/iam/uma-user-agent/. |
|
The suggestion from @AlvaroVillanueva to use the Through testing it has been verified that the The |
The suggestion from @AlvaroVillanueva to use the
access_tokenhas been tested and shown to work.The client through which the token is obtained must be configured to receive the
access_tokenas a JWT (this is an option in Gluu at least).Through testing it has been verified that the
access_token(as JWT) can be used by theresource-guardin the UMA flow to exchange theticketfor anRPTand so assert the policy decision - this also works for rules that specifyis_operator.The
access_tokenshould be obtained with arefresh_tokenthat can be used to cope when the short-livedaccess_tokenexpires.The
access_tokenshould be provided in theAuthorization: Bearer <token>request header in the…