Skip to content

Optimize resources during token renewal #1551

@individual-it

Description

@individual-it

Currently, token renewal bootstraps the whole web client in an iFrame, which is quite costly and takes time with a bad connection. This can result in the page not behaving correctly, especially during long running operations (e.g. uploads) because token renewal takes too long.

We see two possible solutions to this, both require lots of research and changes:

  1. Web ships a small standalone Vue application that gets bootstrapped in the iFrame. The challenge here is that it needs the AuthService, the UserManager, router etc. We need to find all involved parts and elaborate how to achieve this. Maybe it's possible to move them to this standalone app and use them in the runtime while removing all the dependencies from the standalone app to Web, so it can be run separately.
  2. Make use of the Backends for Frontends (BFF) pattern, moving authentication entirely to the BFF and only having a session cookie in web.
Original issue

Initial Checklist

  • I understand this is a bug report and questions should be posted in the Community Discussions
  • I searched issues and couldn’t find anything (or linked relevant results below)

Bug Description

When an upload takes too long the user session expires and the user is asked to login again
Image

Image

Reproduction Steps

start a long running upload, wait

Expected Outcome

session should not expire

Actual Outcome

user is requested to login again

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    Status

    No status

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions