observablehq / framework

A static site generator for data apps, dashboards, reports, and more. Observable Framework combines JavaScript on the front-end for interactive graphics with any language on the back-end for data analysis.
https://observablehq.com/framework/
ISC License
2.29k stars 99 forks source link

Selective access feature #1039

Open novotny1akub opened 5 months ago

novotny1akub commented 5 months ago

The Observable Framework currently seems to grant unrestricted access to the entire dashboard/report once permissions are given. Is it possible to implement a role-based access system, enabling users to have selective access to specific rows based on their assigned roles?

Imagine a scenario with a table containing a name column, featuring entries like John and Paul. Optimally, the Framework could be configured to ensure that Paul, for instance, can exclusively view rows associated with his name. Simultaneously, it is essential to retain the capability of providing all-encompassing access. Does the Observable Framework support such a role-specific and selective access feature?

mbostock commented 4 months ago

We’re very interested in this use case, but view this as a platform feature rather than a Framework feature. Framework is a static site generator: it generates static files (HTML, JavaScript, CSS, CSV, Parquet, etc.), which are served by some other server or service. Framework can’t implement role-based access on its own because it isn’t involved in serving the site; it has no runtime server-side logic.

We’d like to offer this as an Observable platform feature where you can develop sites that serve different data to different users, but it’ll require integration with the Observable platform so that we can layer on role-based access on top of static files that Framework generates.