Есть ли способ отследить и наследовать правило доступа к данным после запроса - PullRequest
0 голосов
/ 26 июня 2018

В моей компании есть продукт BI, который в основном предоставляет решение с графическим интерфейсом для самостоятельных SQL-запросов без кодирования.

Теперь у нас есть этот огромный клиент, у которого есть система управления доступом к данным с правилами в соответствии с ролями и командами, которые уже существуют. Мы просто интегрировали их систему в наш инструмент и решили, что работа выполнена.

Однако одним из их требований было то, что им необходимо управление доступом к данным не только по источникам данных, но и по результатам; и они должны сделать это автоматически. Они объяснили, что когда руководство делится запросами с командами, требуется, чтобы сотрудники в разных отделах только соответственно видели данные. И они не могут, чтобы менеджеры понимали, как настроить правила доступа вручную.

Say you select something from table A & table B:

Select A.FieldA as FA, B.FieldB as FB, X=A.FieldA+B.FieldB
       from A join B group by Z where X > 100

Of the query result:
       FA inherit A.FieldA's data access rules;
       FB inheirt B.FieldB's;
       X inherit the join set of both.

Что усложняет ситуацию, так это то, что результаты одного запроса могут использоваться в качестве источников данных в будущих запросах.

Раньше мы ничего подобного не делали, и начинать с нуля тоже не дешево. Кто-нибудь знает какие-либо готовые реализации или более простые решения этой проблемы?

...