-
Notifications
You must be signed in to change notification settings - Fork 4.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
UI: Show token expiring warning #23143
Conversation
Build Results: |
CI Results: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for tackling this Chelsea!! 🎉
Hello @hashishaw |
Hi @glisav - thank you for the question! User's are not automatically logged out due to inactivity (and you're right, This banner is to inform users the token auto-renewal the UI performs behind the scenes has stopped. If a token is renewable, the UI auto renews the lease halfway through the token's The UI stops this auto-renew process if a user is inactive. This allows the token to expire, which then will log the user out when the token expires. (To avoid expiration, user activity must resume or the token must be manually renewed) |
Hi @hellobontempo |
@hashishaw is this inactivity time of 3 minutes configurable in Helm chart? I want to extend inactivity time and to make this banner appear after 15 minutes. |
@glisav no, it's not currently configurable. However, we're currently tracking requests to configure it for future feature work, so I'll add your ask to that ticket. Thanks for the feedback! |
This PR addresses #20859
Currently, when a token is going to expire due to inactivity* we show a message in the user menu dropdown. However, that is not very discoverable and we should also alert the user if their token is set to expire in the main page.
This PR adds a dismissable banner if we know the token is going to expire. Clicking "Renew token" will renew the token and restart the inactivity timeout clock.
There is one limitation to this approach, which is we currently don't know if the token is at its max TTL. This should be follow-on work to show a similar message of the token will fail on the next refresh request.
*inactivity in the UI is defined as a lack of API requests. A user could be filling out a very long form, for example, and if there are no API requests (other than
health
andseal-status
which don't count) for 3 min the user will be logged out next time the token expiration time is passed. If there are requests in that time, the UI will automatically refresh the token instead.Replication steps
Log into UI and don't click anything or change pages. The banner should show up after about 3 minutes