2016-09-04 4 views
0

Я создал PowerView, используя соединение BISM на Enterprise Portal of AX. Этот отчет PowerView будет использоваться более 100 пользователями. Я хочу, чтобы каждый пользователь использовал свои данные в PowerView вместо просмотра полных данных. Один из вариантов - создать 100+ ролей безопасности в SSAS (многомерном), который не является жизнеспособным вариантом. Посмотрите, как я могу добиться динамической безопасности в PowerView, чтобы каждый пользователь видел свое собственное представление. Благодарю.Как реализовать динамическую безопасность в PowerView

ответ

0

Power View не предлагает никакой защиты. Вам нужно будет сделать это в SSAS, но вам не нужно 100+ ролей безопасности. Вы захотите изучить динамическую безопасность. Чтобы создать динамическую безопасность, вам потребуется какой-то способ связать пользователя с информацией, которую они должны видеть. Обычно это означает добавление поля в существующую таблицу или создание новых таблиц.

Если все пользователи защищены одними и теми же атрибутами, они могут содержаться в одной роли. Если некоторые пользователи защищены на основе одного атрибута и другие на основе другого атрибута, вам может потребоваться несколько ролей.

Вот как это может сработать.

  1. Создайте таблицу, которая содержит всех пользователей, которым необходим доступ к вашему кубу.
  2. Создайте таблицу моста, которая связывает пользователей с атрибутом, на котором вы обеспечиваете их доступ. Например, пользователи могут видеть только определенные продукты, поэтому у вас есть таблица идентификаторов пользователей и идентификаторов продуктов.
  3. Добавьте эти таблицы в свой DSV.
  4. Создайте измерение пользователя.
  5. Создать группу мер, основанную на таблице безопасности.
  6. Создайте роль для этого типа пользователя и добавьте инструкцию MDX к разрешенному набору элементов. Также установите флажок Включить визуальные итоговые значения.
    1. Заполните элементы для роли, желательно через группу AD, а не отдельно, если у вас есть более 100 пользователей.

Разрешенные набор элементов будет выглядеть как

Exists(
    {[Product].[Product ID].members}, 
    STRTOSET("[Users].[UserName].[UserName].&[" + Username() + "]"), 
    "Bridge User Product" 
    ) 

Вы можете найти хороший пост here блог и хорошее видео о безопасности SSAS here (динамическая защита начинается вокруг 35-я минуты) ,

Смежные вопросы