Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

...

Applies to Write-Back Server and Write-Back Cloud

Question

How to manage row level security with Write-Back?

When you share workbooks with others by publishing them to Tableau Server, by default, all users who have access to the workbooks can see all of the data shown in the views. You can change this behavior by applying a type of filter that allows you to specify which data “rows” any given person signed in to the server can see in the views. This is often referred to as Row-Level Security (RLS).

Typically, to implement RLS security in Tableau, the standard approach is to create a new table in the database to manage which users can access which rows. This new table is then joined with the dataset to analyze and combined with a data source filter based on the user name. A classic example is defining which Sales Representatives can access which regions and states. 

This approach while working perfectly, places a few limitations, how can you manage the new access table? This  This is where Write-back can help. Users' access can be directly managed in a Tableau dashboard, using Write-Back to insert, edit and delete user's accesses visually, while writing information to database table in the background.

Answer

Table of Contents
minLevel2
excludeRelated:*

The attached workbook has the full solution implemented and is using Writeusing Write-Back public demo environment, for more information on using it check our Public Demo instruction page.

Row Level Security on Tableau     Write-Back Configuration     Connecting to the Dataset      Row Level Security.twbx

Step 1: Step 1: Create the Admin Dashboard

...

After identifying the attribute, you must include this attribute in your view. Let's assume that the attribute is the region. You need to create a view that incorporates region - e.g. a map.

...


...



Step 2: Set Up Write-Back for Managing Permissions

...

Add Write-Back to the dashboard and your configuration should look similar to this:

  • The Identifier Attribute in Source Fields, eg region.

  • A new Input Field called "User", type text

  • A new Input Field called "Status", type pre-definied with values "Active" and "Inactive"

  • Keep Write-Back in Form View

Step 3: Configure Permissions

...

After that you can create a viz that relies on that data source.Image Removed


...



Step 5: Create the End User Dashboard

...

Thus, only the lines related to that user will be shown.Image Removed


...