How to share dashboards from NFORS/StatEngine with external agencies

Austin Anderson
statengine
Published in
4 min readMar 27, 2020
Photo by Hello I'm Nik 🎞 on Unsplash

One request appearing more and more frequently among our users is “What is the best way to serve information in NFORS to agencies or stakeholders outside our organization?” With more and more pressure on open communication between various facets of the public realm, we wanted to offer our current best practices recommendations on how to share your dashboards with authorized parties outside your agency.

Workspaces as a means of serving relevant information

Workspaces are a partitioning tool we implemented in NFORS to allow control over user access to dashboards, as well as a means of potentially organizing dashboards and information however our users may desire. Fortunately, this means it is possible to set up a workspace with read-only permissions that is accessible to trusted guest users to whom a department is willing to supply credentials.

To set up such a workspace and dashboard, follow the following steps:

  1. With admin privileges, create a new user for the department named, for example, “guest,” with an email address controlled by your agency.
  2. Create a new workspace, titled for example “Guest dashboards,” and grant the guest read permissions on these dashboards.
  3. Transfer the dashboard you want to expose to guests and its visualizations from your internal workspace to the guest workspace.

Let’s work through each of these steps in order!

Creating a new user

First, we want to create a new ‘guest’ user whose credentials we will share with trusted third-party entities. Several department have used accounts like these to share information with, for example stakeholders such as city council members. However, at this time we do not recommend sharing a guest account broadly, for example with the public.

This recommendation is for two reasons. First, even read-only permissions permit complicated queries to be made, and if a broad set of people had access, they could greatly bog your system down with potentially spurious or even malicious queries. Second, your department’s incident and apparatus indices may contain a small amount of PII in the form of names of personnel assigned to apparatuses on given calls, and permitting those names to be publicly accessible outside of trusted third-party entities may be a breach of privacy.

Now then, to create a new ‘guest’ user, which requires admin privileges, take the following steps:

  1. From the control panel, select the ‘My Department’ tab on the left side.
  2. Choose “Add
  3. Fill out the relevant information, and select ‘create user.’
Steps to create a new user

Creating a new ‘guest’ workspace

To create a new empty workspace to use for your guests, and supply the proper permissions, perform the following steps:

  1. From the control center, click on ‘Workspaces’ and select ‘Create New’
  2. On the subsequent page, remove the default dashboards, name the workspace, and supply a description
  3. Give your ‘guest’ user Read permissions on the workspace
  4. Give yourself ‘Owner’ and ‘Write’ permissions.
Steps for creating a ‘guest’ workspace.

Transferring a dashboard from an existing workspace to your ‘guest’ workspace

In the event that you don’t want to recreate or create a brand new dashboard containing the metrics and visualizations that you want your guest user to see, you can transfer existing dashboard(s) from one of your other workspaces.

Warning: This process takes time and is detail-oriented. At present however, it is the best way to transfer a dashboard between workspaces.

Workspaces are strictly partitioned, so the only way to transfer a dashboard and its visualizations from one workspace to another is to export it and its visualizations from one workspace and subsequently import it into the target workspace. Take the following steps to do so:

  1. First, go to the dashboard you would like to transfer and write down the name of every visualization in it. The name is the text in the top-left corner of every text box, provided it has not been manually renamed.
  2. Next, select the management tab on the left, then choose ‘Saved Objects’ on the subsequent page.
  3. On each page: select the dashboard and visualizations that are on your list, and click export. You will end up with at most a number of export.json files equal to the number of pages of objects.
  4. Navigate to your ‘guest’ workspace, go back to saved objects, and select ‘import’ in the top right corner. In the dialogue that comes up, keep “automatically overwrite all saved objects” checked, and choose your first export.json file to import, then click ‘import’ in the bottom right hand corner.
  5. Repeat step 4 for each export.json file you produced while exporting.
  6. Your dashboards and visualizations are now in the new workspace!

We actually covered this import and export process in more detail in an earlier blog post when we announced workspaces! Check it out if you’re having difficulty with this part!

Note: If you find that you forgot a visualization and it is coming up ‘blank’ or with an error in your new workspace, just look at its name in the original workspace dashboard, export it and then import it into the new workspace.

Share your guest account information with your authorized third-party

Now, share your guest account information with your authorized third-party that needs access to the ‘guest’ workspace. They will only see that workspace and only be able to access the dashboards in a read-only fashion!

--

--

Austin Anderson
statengine

I am a data scientist specializing in public safety applications who loves policy and decision analysis. Before you do anything, focus on the value proposition.