Size: a a a

2021 August 04

AV

Alexander Varlamov in Чат Tableau
LEFT JOIN projects P ON W.project_id = P.id WHERE N.grantee_type = 'User' AND N.authorizable_type = 'Workbook' AND P.name is not NULL
       
        UNION
       
        SELECT N.authorizable_type AS "Object Type", N.grantee_id AS "Is _users.id/groups.id", N.grantee_type AS "Is User/Group", N.capability_id, S.name AS "Site", S.id AS "site_id",
            CASE
                WHEN N.permission = 1 THEN 'Grant'
                WHEN N.permission = 2 THEN 'Deny'
                WHEN N.permission = 3 THEN 'Grant'
                WHEN N.permission = 4 THEN 'Deny'
                ELSE NULL
            END AS "Base Authorization",
        G.name as "Friendly Name", V.name as "Object 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 sites S ON G.site_id = S.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' AND P.name is not NULL
       
        UNION
       
        SELECT N.authorizable_type AS "Object Type", N.grantee_id AS "Is _users.id/groups.id", N.grantee_type AS "Is User/Group", N.capability_id, S.name AS "Site", S.id AS "site_id",
            CASE
                WHEN N.permission = 1 THEN 'Grant'
                WHEN N.permission = 2 THEN 'Deny'
                WHEN N.permission = 3 THEN 'Grant'
                WHEN N.permission = 4 THEN 'Deny' ELSE NULL
            END AS "Base Authorization",
        U.friendly_name as "Friendly Name", V.name as "Object 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 sites S ON U.site_id = S.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' AND P.name is not NULL
        ) X
        LEFT JOIN capabilities C ON X.capability_id = C.id
    ) DM
        LEFT JOIN
            (SELECT system_users.name AS user_name, system_users.id AS system_user_id, users.id AS user_id, sites.id AS site_id,
               CASE
                   WHEN system_users.admin_level = 10 THEN 1
                   ELSE 0
                   END AS "Is SysAdmin",
                   CASE
                   WHEN system_users.admin_level = 5 THEN 1
                   ELSE 0
               END AS "Is SiteAdmin"
             FROM system_users, users, sites
             WHERE users.site_id = sites.id
             AND users.system_user_id = system_users.id) RC
ON ( DM."site_id" = RC.site_id AND DM."Is _users.id/groups.id" = RC.user_id AND DM."Is User/Group" = 'User' )
источник

ВБ

Виталий Балобанов... in Чат Tableau
Царь запрос))
источник

VM

Vladimir Martynenko in Чат Tableau
Репозиторий - это и есть БД Postgres. В чем смысл переноса на sql?
источник

AV

Alexander Varlamov in Чат Tableau
Я таким запросом пользуюсь. Он где-то на форуме есть. Его Toby Ercson писал, еще воркбук с пермишнами там тоже есть
источник

RS

Ruslan Sharifullin in Чат Tableau
перенес на запросы, а не джоины в табло преп)
источник

RS

Ruslan Sharifullin in Чат Tableau
с этим знаком, когда рассматривал уже готовые решения)) были нюансы с наследованиями проджект лидов, и в некоторых местах выдавал не те права доступа
источник

AV

Alexander Varlamov in Чат Tableau
Еще он не учитывает вложенность проектов. В некоторых местах сейчас он неверно для All Users права забирает. Надо поразбираться что поменялось
источник

RS

Ruslan Sharifullin in Чат Tableau
к слову на тот момент это было единственное рабочее решение)) в принципе инфы было мало, либо не вся логика расписывалась
источник

AV

Alexander Varlamov in Чат Tableau
А с историей изменения пермишнов не разбирался? Чтобы ивенты по изменениям с тем кто поменял собирать
источник

RS

Ruslan Sharifullin in Чат Tableau
я думал привязать, но там есть заморочки с теми кому-когда-на что, так то в historical_events есть actor/target user если ещё на конкретную entitie была связь, то ок, но там везде нули))
источник

RS

Ruslan Sharifullin in Чат Tableau
как пример с capabilities из постгреса и тех названий что на серваке в effective permissions
источник

MZ

Maxim Zadonskiy in Чат Tableau
Как знак процента сделать в результате деления ?
источник

T

Timur in Чат Tableau
Кто-нибудь может подсказать хорошие ютуб-каналы по табло или bi? Для вкатывания с нуля. И не индусов желательно. Спасибо!
источник

TN

Taras Novokhatsko in Чат Tableau
Скажите, в слаке есть канал?
источник

МЖ

Максим Жуков... in Чат Tableau
источник

МЖ

Максим Жуков... in Чат Tableau
источник

МЖ

Максим Жуков... in Чат Tableau
источник

МЖ

Максим Жуков... in Чат Tableau
так?
источник

MZ

Maxim Zadonskiy in Чат Tableau
Ага, нашёл
источник

МЖ

Максим Жуков... in Чат Tableau
источник