Skip to content
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

Investigate zrok #16

Closed
iaindillingham opened this issue Dec 18, 2024 · 1 comment
Closed

Investigate zrok #16

iaindillingham opened this issue Dec 18, 2024 · 1 comment
Assignees

Comments

@iaindillingham
Copy link
Member

In the early stages of development, we may need to restrict which dashboards can be accessed by which users. In #11, we describe this restriction as part of "a cautious, stepwise approach" towards an MVP. However, we intentionally don't describe an implementation of this restriction.

Recently, Thomas used zrok to restrict access to a local instance of OS Interactive.1 Doing so allowed a user to record several videos of OS Interactive, covering a range of scenarios. We should investigate whether we can use zrok to allow us to restrict access to dashboards by users.

The acceptance criteria (ACs) for this issue are:

  • Use zrok to share a local dashboard (Recreate SRO Liver Function Testing key measure with Streamlit #2) with another team member
  • Have the other team member interact with the dashboard using their web browser (i.e. not with a shared screen)
  • Report back on, e.g. the stability of the connection, the longevity of the connection, the permanence of the URLs
  • Draft a protocol that describes how we might use zrok to restrict access to dashboards by users during the early stages of development

Footnotes

  1. https://bennettoxford.slack.com/archives/C63UXGB8E/p1734513095933619

@alarthast alarthast self-assigned this Jan 2, 2025
@alarthast
Copy link
Contributor

alarthast commented Jan 9, 2025

Stability and longevity: Good

  • The URL was put live at 09:55, and the dashboard was immediately accessible at 10:30 without needing any server-side action
  • The dashboard was killed at 11:00 but the mapping of port 8501 to the URL was left up. At 12:15, a new dashboard was run and it was picked up by the URL without issue

Permanence of URL: Requires zrok environment

  • To reserve a URL (e.g. https://openpath.share.zrok.io/) for use, a zrok environment must be enabled on the local machine.
  • Disabling the environment releases the reservation. Disabling is manual - rebooting does not kill the environment
  • It's probably reasonable to expect us to be able to hold on to a particular url without much issue (especially if we name it something we're not going to get competition for)

Additional points

  • Vicky noted that a person with access to the dashboard will be able to save a PDF copy of it on their local computer using the Print function. We should treat emailing a zrok link as the equivalent to emailing a full snapshot of the dashboard as an attachment (i.e. be aware that the recipient can retain a copy of the dashboard contents). This is highlighted in red in the protocol.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants