2 Replies Latest reply on Mar 15, 2016 7:10 AM by Jay Swan

    Row Level Security Set Up How To Implement...

    Jay Swan

      I have been reading the posts on row level security and have a couple questions.


      I think I have it set up correctly so far, just now sure where in Tableau I go to join the two data sources below and hide the data rows with a Client ID of 111 to all the Users ID’s not associated with a Client ID of 111.


      1. We trap the User ID with the USERNAME() Tableau function, so we know each user of the dashboard.
      2. The User Table tags the Client ID to the User ID, as noted below.
      3. The User Table (Excel) was brought into the dashboard via the Data/New Data source option

        USER TABLE:

      User ID

      Client ID




      1. The Tableau Dashboard uses exported data, from a SAS Dataset and looks basically like this:


      Client ID

      Dashboard Row…


      We WANT 111 UserID’s  to see these and ALL Rows


      If User ID <> 111 they should NOT SEE the 111 row in the Dashboard, but see this row           


      If User ID <> 111 they should NOT SEE the 111 row in the   Dashboard, but see this row


      1. Not sure I needed to do this, but I have created a new variable called ‘ViewRecords’ and tagged each row with one of two values.
        1. HideRows
          HideRows is set when the Client ID = 111
        2. DisplayRows
          DisplayRows is set when the Client ID <> 111 Thinking this would be an efficient way to implement something like this:
      2. Pseudocode:
        If USERNAME() = 111 Then Display the row
        Hide the Row

      3. Other Information:
        1. Tableau 9.0
        2. Using SAS as the data source and using the export option, so I have total control on the format of the input data
        3. Data refresh is monthly
        4. I am not an administrator on the tableau server where the dashboard is published

      Fairly new to Tableau, and enjoy working with the product.


      TIA, Jay