5 Replies Latest reply on Mar 2, 2017 9:18 PM by Jeff D

    Regarding Permissions

    Tharashasank Davuluru

      HI All,

       

      I have project in Tableau server and some of the permissions were changed suddenly by some one. How do i need to find when the permissions were changed and who has changed it ? Please guide me.

       

      I want to find who has changed the permissions to that particular project and workbooks in it.

       

      Thanks,

      Tharashasank

        • 1. Re: Regarding Permissions
          Jeff D

          Hi Tharashasank, Tableau Server saves audit history in the hist_ tables.  See Workgroups Database .  For project permissions, take a look at historical_events (this is the mtable for audit events) and hist_projects.

          • 2. Re: Regarding Permissions
            Tharashasank Davuluru

            Hi jeff ,

             

            I have tried by connecting to these tables but unfortunately i missing some thing where i am not able to find the time stamp . Can you help me in this tweaking  a bit this so that .i can find the person with the help of time stamp.

             

            Here is the custom sql  iam using:

             

            SELECT * FROM

             

            (SELECT

             

             

             

              N.authorizable_type,N.authorizable_id,N.grantee_id,N.grantee_type,N.capability_id,N.permission,

                U.friendly_name as grantee_name,

                P.name as authorizable_name,

                P.name as project,'.' as workbook,'.' as view

             

             

             

            FROM next_gen_permissions N

             

            LEFT JOIN _users U on N.grantee_id = U.id

             

            LEFT JOIN projects P on N.authorizable_id = P.id

             

             

             

            WHERE N.grantee_type = 'User' AND N.authorizable_type = 'Project'

             

             

             

            UNION

             

             

             

            SELECT

             

                N.authorizable_type,N.authorizable_id,N.grantee_id,N.grantee_type,N.capability_id,N.permission,

                G.name as grantee_name,

                P.name as authorizable_name,

                P.name as project,'.' as workbook,'.' as view

             

             

             

            FROM next_gen_permissions N

             

            LEFT JOIN groups G on N.grantee_id = G.id

             

            LEFT JOIN projects P on N.authorizable_id = P.id

             

             

             

            WHERE N.grantee_type = 'Group' AND N.authorizable_type = 'Project'

             

             

             

            UNION

             

             

             

            SELECT

             

                N.authorizable_type,N.authorizable_id,N.grantee_id,N.grantee_type,N.capability_id,N.permission,

                G.name as grantee_name,

                W.name as authorizable_name,

                P.name as project,W.name as workbook,'.' as view

             

             

             

            FROM next_gen_permissions N

             

            LEFT JOIN groups G on N.grantee_id = G.id

             

            LEFT JOIN workbooks W on N.authorizable_id = W.id

             

            LEFT JOIN projects P on W.project_id = P.id

             

             

             

            WHERE N.grantee_type = 'Group' AND N.authorizable_type = 'Workbook'

             

             

             

            UNION

             

             

             

            SELECT

             

                N.authorizable_type,N.authorizable_id,N.grantee_id,N.grantee_type,N.capability_id,N.permission,

                U.friendly_name as grantee_name,

                W.name as authorizable_name,

                P.name as project,W.name as workbook,'.' as view

             

             

             

            FROM next_gen_permissions N

             

            LEFT JOIN _users U on N.grantee_id = U.id

             

            LEFT JOIN workbooks W on N.authorizable_id = W.id

             

            LEFT JOIN projects P on W.project_id = P.id

             

             

             

            WHERE N.grantee_type = 'User' AND N.authorizable_type = 'Workbook'

             

             

             

            UNION

             

             

             

            SELECT

             

                N.authorizable_type,N.authorizable_id,N.grantee_id,N.grantee_type,N.capability_id,N.permission,

                G.name as grantee_name,

                V.name as authorizable_name,

                P.name as project,W.name as workbook,V.name as view

             

             

             

            FROM next_gen_permissions N

             

            LEFT JOIN groups G on N.grantee_id = G.id

             

            LEFT JOIN views V on N.authorizable_id = V.id

             

            LEFT JOIN workbooks W on V.workbook_id = W.id

             

            LEFT JOIN projects P on W.project_id = P.id

             

             

             

            WHERE N.grantee_type = 'Group' AND N.authorizable_type = 'View'

             

             

             

            UNION

             

             

             

            SELECT

             

                N.authorizable_type,N.authorizable_id,N.grantee_id,N.grantee_type,N.capability_id,N.permission,

                U.friendly_name as grantee_name,

                V.name as authorizable_name,

                P.name as project,W.name as workbook,V.name as view

             

             

             

            FROM next_gen_permissions N

             

            LEFT JOIN _users U on N.grantee_id = U.id

             

            LEFT JOIN views V on N.authorizable_id = V.id

             

            LEFT JOIN workbooks W on V.workbook_id = W.id

             

            LEFT JOIN projects P on W.project_id = P.id

             

             

             

            WHERE N.grantee_type = 'User' AND N.authorizable_type = 'Workbook'

             

             

             

              ) X

             

             

             

            LEFT JOIN capabilities C on X.capability_id = C.id

             

             

             

             

             

            Thanks,

            Tharashasank

            • 3. Re: Regarding Permissions
              Jeff D

              Your query doesn't use the history tables, that's why you're not seeing any timestamps.

              • 4. Re: Regarding Permissions
                Tharashasank Davuluru

                Hi,

                 

                Can you let me know how the query need to be changed?

                 

                Thanks,

                Tharashasank

                • 5. Re: Regarding Permissions
                  Jeff D

                  Hi Tharashasank, I took a closer look and found that unfortunately permission changes are not recorded in the history tables.  Sorry!  You can vote for this feature in the Ideas forum: https://community.tableau.com/ideas/4135

                  1 of 1 people found this helpful