How to Set Up Tableau Row Level Security: 3 Methods


Tableau Row Level Security

Exposing all Tableau information to all users isn’t a great idea. For privacy and confidentiality, organizations should only expose the information that a particular user should see. That’s why it’s important to restrict how data is accessed in Tableau workbooks. Tableau Row Level Security is the solution. It helps Tableau users to restrict how data is accessed in Tableau workbooks. In this article, you will be discussing Tableau Row Level Security in detail. 

Table of Contents


To implement the Tableau Row Level Security you need to meet the following requirements:

  • Basic understanding of Tableau.
  • Tableau Server.

What is Tableau?

Tableau Row Level Security - Tableau Logo
Image Source

Tableau is a popular Data Visualization and Business Intelligence tool among businesses and individuals. It helps its users to visualize their data to make it easy to understand for all people. Tableau users can create different types of visualizations and combine them into dashboards. These dashboards can then be accessed by different users from various geographic locations. 

Key Features of Tableau

Let’s explore some of the amazing features offered by Tableau:

  • Users can deploy interactive models and dashboards with Tableau.
  • Tableau supports different data sources for connecting & importing data from a wide range of external sources.
  • Tableau users can collaborate with their teams easily for collaborative work or review.
  • Users can also share the dashboard to the cloud, making it available from anywhere.
  • Tableau offers 200+ connectors to allow users to securely connect to other data sources.

What is Tableau Row Level Security?

Tableau Row Level Security involves restricting data in Tableau workbooks to certain users. Note that it’s different from Tableau permissions which grant or deny access to content. With permissions, you can only control who can view or edit a workbook. Row-level Security allows users with similar permissions to access different data. For example, one user may see data from America while another user may see data from Asia. 

By default, Tableau users with access to a workbook can see all the data in a view. When you apply Tableau Row Level Security, you will be able to specify the rows that each person can view once signed into the server. It applies to both data sources with live connections and extracts sources with tables stored as multiple tables. 

Next, you will be discussing how to implement this Tableau Row Level Security feature in Tableau.

Simplify Tableau Data Analysis with Hevo’s No-code Data Pipeline

Hevo Data, a No-code Data Pipeline, helps load data from any data source such as Databases, SaaS applications, Cloud Storage, SDK,s, and Streaming Services and simplifies the ETL process. It supports 100+ Data Sources including 40+ Free Sources. It is a 3-step process by just selecting the data source, providing valid credentials, and choosing the destination. 

Hevo loads the data onto the desired Data Warehouse/destination in real-time and enriches the data and transforms it into an analysis-ready form without having to write a single line of code. Its completely automated pipeline, fault-tolerant, and scalable architecture ensure that the data is handled in a secure, consistent manner with zero data loss and supports different forms of data. The solutions provided are consistent and work with different BI tools such as Tableau.


Check out why Hevo is the Best:

  • Secure: Hevo has a fault-tolerant architecture that ensures that the data is handled securely and consistently with zero data loss.
  • Schema Management: Hevo takes away the tedious task of schema management & automatically detects the schema of incoming data and maps it to the destination schema.
  • Minimal Learning: Hevo, with its simple and interactive UI, is extremely simple for new customers to work on and perform operations.
  • Hevo Is Built To Scale: As the number of sources and the volume of your data grows, Hevo scales horizontally, handling millions of records per minute with very little latency.
  • Incremental Data Load: Hevo allows the transfer of data that has been modified in real-time. This ensures efficient utilization of bandwidth on both ends.
  • Live Support: The Hevo team is available round the clock to extend exceptional support to its customers through chat, email, and support calls.
  • Live Monitoring: Hevo allows you to monitor the data flow and check where your data is at a particular point in time.

Simplify your Data Analysis with Hevo today! 


How to Implement Tableau Row Level Security?

Tableau provides different ways to implement row-level security. Let’s discuss them:

1) User Filter with Manual Mapping

Suppose you have the following data showing the percentage of fully vaccinated individuals in different countries. 

Tableau Row Level Security - Manual Mapping
Image Source: Self

You want each country manager to access only their respective country, but not the vaccination percentage of other countries. You can create a user filter and map every user manually with the countries they should view. To create the user filter, follow these steps:

Step 1: Click the Menu Bar and choose “Server”. 

Step 2: Choose “Create User Filter”. You will be presented with the list of available fields where you can create the user filter form. If you haven’t signed into your Tableau Online or Server account, you may be prompted to do so. 

Step 3: Assign each user to the appropriate region. 

This is a good approach to implementing Tableau Row Level Security if there is only a small number of users. However, if there are many users, you will spend too much time doing the mapping. Again, if a new user joins Tableau, you will have to edit the workbook to add the mapping. 

2) Dynamic Filter using a Security Field

This approach to Tableau Row Level Security involves joining a data source and a security table. The security table contains the list of usernames and the countries they should access. 

A join should then be created between the data and the users’ table.
The dynamic filter should be added by creating a calculated field. You should use the following formula:

Tableau Row Level Security - Dynamic Filter
Image Source: Self

The USERNAME() represents the name of the user signed into Tableau. You should then add the security filter and allow TRUE results only.

Tableau Row Level Security - Dynamic Filter Applied
Image Source: Self

This approach to Tableau Row Level Security is appropriate when you are sure that users and groups will be added since there is no need for manual mapping. However, it has a terrible performance compared to the user filter because you must join the security table to the original data source. 

3) Security Groups

You can also use Security Groups to implement Tableau Row Level Security. Tableau allows you to create groups and add users to them. The idea of this approach is to create one group for each country then map the groups to their respective countries. 

You can create groups from the Groups tab of Tableau Server. 

Tableau Row Level Security - Security Groups
Image Source: Self

Open the Users tab and add users to the group. Once you’ve created the groups and users for all countries, you should create a user filter within the workbook. Just follow the steps given below:

Step 1: Click the Server tab. 

Step 2: Choose “Create User Filter”. 

Step 3: Select the dimension to be mapped to every group. In my case, the dimension will be “Country”. 

Step 4: Move the filter to the Filters shelf. 

In the previous example, mapping was done between users and countries. In this case, it will be between groups and countries. This should be done for every group that you have created. 

You will have created a set of users who you can copy into other workbooks that have the Country dimension and avoid repeating the mapping process. 

Although the Security Group approach is similar to the User Filter approach, it is very important if you will have to add new users. Instead of editing all workbooks where you have applied Tableau Row Level Security, you only have to add the users to the groups. Since the group is already mapped to one country, the mapping will be done automatically without the need to edit the workbooks. 

These are the best approaches to implementing Tableau Row Level Security


You’ve learned, that Tableau is a data visualization tool. Users can create dashboards from their data. Tableau Row Level Security is a way of restricting how data in Tableau workbooks is accessed. It allows users with similar permissions to access different data. 

The popular approaches to implementing row-level security in Tableau include using a User Filter, Dynamic Filter, and a Security Group

  • The User Filter approach involves mapping each user to the row they should access, for example, a particular country. 
  • The Dynamic Filter approach involves joining a data source and a security table with the list of usernames and rows that they should access. 
  • The Security Group approach involves creating groups of users and mapping the groups to the rows they should access.

However, as a Developer, extracting complex data from a diverse set of data sources like Databases, CRMs, Project management Tools, Streaming Services, Marketing Platforms to your desired destination can seem to be quite challenging.

Moreover, analyzing and visualizing your data by loading it from a Data Warehouse to your Tableau can be cumbersome. This is where a simpler alternative like Hevo can save your day! 

Hevo Data is a No-Code Data Pipeline that offers a faster way to move data from 100+ Data Sources including 40+ Free Sources, into your Data Warehouse to be visualized in a BI tool such as Tableau. Hevo is fully automated and hence does not require you to code.


Want to take Hevo for a spin?

SIGN UP and experience the feature-rich Hevo suite first hand. You can also have a look at the unbeatable pricing that will help you choose the right plan for your business needs.

Do you have any doubts? Feel free to ask or share your experience with Tableau Row Level Security in the comments section below!

Nicholas Samuel
Technical Content Writer, Hevo Data

Nicholas Samuel is a technical writing specialist with a passion for data, having more than 14+ years of experience in the field. With his skills in data analysis, data visualization, and business intelligence, he has delivered over 200 blogs. In his early years as a systems software developer at Airtel Kenya, he developed applications, using Java, Android platform, and web applications with PHP. He also performed Oracle database backups, recovery operations, and performance tuning. Nicholas was also involved in projects that demanded in-depth knowledge of Unix system administration, specifically with HP-UX servers. Through his writing, he intends to share the hands-on experience he gained to make the lives of data practitioners better.

No-Code Data Pipeline For Tableau