Skip to content

Особые сценарии для разрешений строк

1. Обзор

1.1 Версия

Версия сервера FineBI
6.0

1.2 Описание проблемы

Администраторы могут устанавливать разрешения на строки и столбцы, чтобы разные пользователи могли просматривать разные данные. Однако если разрешения на строки и столбцы устанавливаются одновременно для отделов, ролей и пользователей, или если используются сложные настройки, такие как ассоциативные отношения, желаемые результаты могут быть не достигнуты.

1.3 Идеи для решений

Эта статья иллюстрирует некоторые особые сценарии использования разрешений для строк и столбцов.

2. Установка прав доступа к строкам таблицы данных

2.1 Взаимосвязь "или" после того, как отдел, роль и пользователь одновременно устанавливают привилегии в строке

2.1.1 Настройки привилегий

Пример: пользователь Алиса является директором технической поддержки и также принадлежит к роли генерального, тогда установите разрешения на таблицу данных "Brand Dimension" для всех троих (директор технической поддержки, генеральная роль и пользователь Алиса).

1) Установите для Алисы права доступа к ведомственным линиям и выберите "Техническая поддержка > Министр".

Установите, что поле "Описание бренда" в разделе "Данные отрасли > Розничная торговля > Демонстрация розничной торговли > Измерение бренда" принадлежит "New Balance". Как показано на рисунке ниже:

2) Установите привилегии ролевой линии для Алисы и выберите "Обычная роль".

Установите поле "Описание бренда" в "Industry Data>Retail Ecommerce>Retail Ecommerce demo>Brand Dimension" на принадлежность к "HANG TEN". Как показано ниже.

3) Установите привилегии строки пользователя для Алисы и выберите "Конечные привилегии пользователя > Алиса".

Установитедля параметра "Описание бренда" в разделе "Данные отрасли > Розничная электронная торговля > Демонстрация розничной электронной торговли > Размер бренда"значение "Октябрьская мамочка". Как показано на рисунке ниже:

2.1.2 Просмотр эффектов

Учетная запись Алиса для входа в систему FineBI, в итоге получается три строки условий разрешения с отношениями "или". Это показано на рисунке ниже:

Примечание: Если вы индивидуально настраивали права использования/управления/авторизации для пользователя, после настройки прав появится желтый символ портрета. В этом случае, если вы хотите восстановить наследование привилегий отдела/роли, вам необходимо нажать кнопку Восстановить унаследованные привилегии. Появится всплывающее окно "Подтвердите очистку индивидуальных настроек привилегий пользователя для привилегий данных и восстановление наследования привилегий отдела/роли", нажмите OK. Как показано на следующем рисунке:

2.2 Настройка разрешений строк в разделах "Отдел", "Роль" и "Пользователь" принимает значение "или" к настроенным разрешениям строк.

2.2.1 Настройки привилегий

Пример: если пользователь Алиса является одновременно руководителем службы технической поддержки и исполнителем общей роли, установите разрешения на строку для таблицы данных для всех трех (руководитель службы технической поддержки, общая роль и пользователь Алиса).

Примечание: Частично устанавливает разрешения на линии.

1) Чтобы установить ведомственные права для Алисы, выберите "Техническая поддержка > Министр".

Установите, что поле "Описание бренда" в разделе "Данные отрасли > Розничная торговля > Демонстрация розничной торговли > Измерение бренда" принадлежит "New Balance". Как показано на рисунке ниже:

2) Установите привилегии роли для Алисы и выберите "Обычная роль".

Установите поле "Описание бренда" в "Industry Data>Retail Ecommerce>Retail Ecommerce demo>Brand Dimension" на принадлежность к "HANG TEN". Как показано ниже.

3) Установите привилегии пользователя для Алисы и выберите "User Final Privileges > Alice".

Установите разрешение на использование "Industry Data>Retail Ecommerce>Retail Ecommerce demo>Brand Dimension" и не устанавливайте разрешение на строку. Как показано на рисунке ниже:

2.2.2 Эффекты просмотра

В итоге настроенные разрешения строк принимают отношение "или", а роли и пользователи без настроенных разрешений строк не учитываются в отношении "или". Это показано на следующем рисунке:

2.3 Используйте "и" для обозначения линейных полномочий на уровне департамента и "или" для обозначения линейных полномочий между различными департаментами.

Пример: иерархия отделов в компании выглядит следующим образом: группа тестирования - линия продукта 1, линия продукта 2, группа разработки - линия продукта 1, линия продукта 2. Это показано на рисунке ниже:

1577781348986999.png

Образец данных: Информационный лист сотрудника.xlsx

2.3.1 Настройки привилегий

1) Добавьте таблицу "Информация о сотруднике", как показано ниже:

2) Пользователь Алиса является членом как команды тестирования, так и команды разработки линии продукта 1.

Назначьте разрешения таблицы информации о сотрудниках для всей тестовой группы, установив разрешения строк на таблицу информации о сотрудниках. Отдел = Тестовая группа. Как показано на следующем рисунке:

3) Назначьте разрешения на таблицу информации о сотрудниках группе "Линия продуктов 1" в тестовой группе и добавьте разрешения на строку для таблицы информации о сотрудниках. Категория группы = Линия продукта 1. Как показано на следующем рисунке:

4) Назначьте права доступа к таблице информации о сотрудниках для всей группы разработчиков, добавьте права доступа к строке как "Таблица информации о сотрудниках". Отдел = Группа разработки. Как показано на рисунке ниже:

5) Назначьте права на таблицу "Информация о сотрудниках" для Product Line 1 в группе "Разработка" и добавьте права на строку в таблице "Информация о сотрудниках". Группа = Линия продукта 1 . Как показано на следующем рисунке:

2.3.2 Эффекты просмотра

Алиса входит в систему FineBI, чтобы просмотреть "Таблицу информации о сотрудниках", Алиса может увидеть данные группы тестирования линии продукта 1 и группы разработки линии продукта 1. Как показано на рисунке ниже:

(сначала возьмите и основывайтесь на полномочиях межведомственного ряда, затем возьмите или для разных полномочий межведомственного ряда)

2.4 Установите права доступа к строкам для таблиц с родственными связями, а главная таблица может фильтровать подтаблицы (эффективно для всех папок).

Пример: Имеются три существующие таблицы: "Таблица размерности наименования продукта", "Таблица фактов по контракту" и "Таблица фактов по окупаемости контракта". Корреляционная зависимость показана на рисунке ниже:

Примечание: "Таблица размерности наименования продукта" является основной таблицей "Таблицы фактов по контракту", а "Таблица фактов по контракту" - основной таблицей "Таблицы фактов по окупаемости контракта".

2.4.1 Настройки привилегий

1) Добавьте "Product Name Dimension Sheet" и "Contract Fact Sheet" в папку A, а "Contract Payback Fact Sheet" в папку B, и установите права доступа к "Product Name Dimension Sheet" и "Contract Payback Fact Sheet" для пользователя Alice. Как показано на рисунке ниже:

2) Администратор устанавливает права на строку "Contract Fact Sheet" в папке A для пользователя Alice, а приобретенный продукт равен "1". Как показано на следующем рисунке:

2.4.2 Эффекты просмотра

1) Обычный пользователь Алиса входит в систему FineBI и видит, что главная таблица "Product Name Dimension Table" из "Contract Facts Table" может видеть все данные и не будет затронута правами доступа к строкам. Как показано на следующем рисунке:

(2) В "Таблице фактов по контракту" и "Таблице фактов окупаемости контракта", которая является подтаблицей "Таблицы фактов по контракту", можно увидеть только данные о том, что закупленные продукты равны 1, на что влияют разрешения строк основной таблицы. Это показано на следующем рисунке:

2.5 Установка прав доступа к строкам для нескольких первичных таблиц с отношениями "и"

2.5.1 Настройки привилегий

Пример: Имеются три существующие таблицы: "Таблица размерности наименования продукта", "Таблица фактов контракта" и "Таблица размерности клиента". Взаимосвязь показана на рисунке ниже:

Примечание: Таблица измерения наименования продукта и таблица измерения клиента являются основными таблицами таблицы фактов контракта.

1) Установите для "Таблицы размерности наименования продукта" строку с идентификатором продукта больше или равным 5. Как показано на следующем рисунке:

2) Установите разрешения строк для "Customer Dimension Table", и провинция будет принадлежать Шанхаю. Как показано на рисунке ниже:

(3) Установите разрешения на использование для таблицы "Contract Facts Table" и не устанавливайте разрешения на строки. Это показано на следующем рисунке:

2.5.2 Эффекты просмотра

Алиса заходит в систему FineBI, чтобы просмотреть таблицу "Факты о контракте", в которой можно увидеть только данные по ID клиента, ID продукта больше или равен 5, а провинция клиента - Шанхай. Как показано на рисунке ниже:

2.6 Пустое - это правда

2.6.1 Логическое описание

В версии 6.0 введена логика разрешения строк "Empty is True", т.е. если для отдела/должности/роли настроены разрешения таблицы, то при отсутствии настроенных разрешений строк, разрешения строк таблицы будут истинными (вы можете видеть все данные в таблице), что будет включено в финальную операцию выборки-выбора разрешений строк.

Примечание: Если разрешения строк таблицы настроены отдельно для пользователя, истинные разрешения строк для отдела/должности/роли не подставляются в итоговую операцию извлечения разрешений строк.

Супер администратор можетвключить/выключить логику полномочий строки " Empty is True" через следующий элемент конфигурации, см. раздел :Заполнение и изменение fine_conf_entity.

Примечание: Новые проекты в версии 6.0 по умолчанию используют логику разрешения строки "Empty is True".

Проекты, обновленные с версии 5.x до версии 6.0, по умолчанию не используют логику разрешения строки "Empty is True".

элемент конфигурациизначение параметра
SystemOptimizationConfig.roleEmptyFilterAsTrueFiltertrue: Использовать логику разрешения строки"пусто - значит истинно".false: не используйтелогику разрешения линии"пусто - значит истинно".

2.6.2 Настройки разрешений

Пример : если пользователь Алиса принадлежит к роли A и роли B, установите разрешение на таблицу данных "Brand Dimension" для них обоих (роль A и роль B).

Результат: Если роль A устанавливает разрешения на строки в измерении Brand Dimension, а роль B не устанавливает разрешения на строки, конечный пользователь может видеть все данные в измерении Brand Dimension.

1) Выберите "Роль A" и установите поле "Описание бренда" в разделе "Данные отрасли>Розничная электронная торговля>Розничная электронная торговля демо>Размер бренда", чтобы оно принадлежало "HANG TEN". Как показано на рисунке ниже.

2) Выберите "Роль B" и установите разрешение на использование "Industry Data>Retail E-commerce>Retail E-commerce demo>Brand Dimension" без установки разрешения на строку. Как показано на рисунке ниже:

2.6.3 Эффекты просмотра

Алиса входит в систему FineBI, чтобы просмотреть таблицу "Brand Dimension ", вы можете увидеть все данные, то есть конечную строку полномочий для "HANG TEN " и "true", чтобы взять конкатенацию. Как показано на рисунке ниже:

3. Установка прав доступа к столбцам таблицы данных

3.1 При переходе с "Использовать разрешение" на "Разрешение администратора" для папки необходимо перенастроить разрешения столбцов.

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

3.2 Настройки полномочий столбца между отделами и ролями принимают соотношение "или", полномочия столбца пользователя максимальны по принципу.

3.2.1 Настройки полномочий

Пример: пользователь Алиса принадлежит к ролям Technical Support и General.

1) Установите права доступа к столбцам таблицы Contract Facts в папке A для отдела технической поддержки и выберите поля Contract Amount, Contract Payment Type и Contract Type. Это показано на следующем рисунке:

(2) Установите разрешения для столбцов "Таблицы фактов по контракту" в папке A для роли General и выберите поля "Тип контракта", "Была ли осуществлена поставка" и "Время подписания контракта". Как показано на рисунке ниже:

(3) На этом этапе установите права доступа к столбцам для пользователя Алиса и выберите поле "Закупленные товары" в таблице "Факты по контракту". Как показано на рисунке ниже:

3.2.2 Эффекты просмотра

Пользователь Алиса входит в FineBI, чтобы просмотреть экран таблицы "Факты о контракте", в котором отображается только поле "Закупленные товары". Разрешения столбцов для этого пользователя полностью зависят от настроек этого пользователя, а настройки ролей отделов больше не влияют на этого пользователя. Это показано на следующем рисунке: