Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / Roles в виде матричной структуры / 25 сообщений из 33, страница 1 из 2
29.03.2005, 11:42
    #32985765
EugenT
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Roles в виде матричной структуры
Подскажите можно ли в AS настроить роли в виде матричной структуры, а не древо-видной основываясь на группах пользователей (т.е. не указавать самих пользователей - т.к. их очень много) и можно ли поменять приоритеты (запрета/разрешения)?

Описание рисунка:
Организационная структура - это группы пользователей в AD относительно каждой организации (пример, Ф1/Ф2/Ф3)
Структурные подразделения - это дополнительные группы пользователей в AD - отделы фирмы (пример, СП1=финансисты/СП2=экономисты)

Для каждой фирмы (из Организационной структуры) создается отдельная роль в Database Roles с указанием что можно видеть, а что нельзя.
И для каждого структурного подразделения создается отдельная роль в Database Roles.

Пользователи, которые входят в группу СП1 видят весь куб Продаж (т.е. по всем фирмам: Ф1 и Ф2 и Ф3) - куб Остатки данные пользователи не видят.
Пользователи, которые входят в группу Ф1 видят информацию по кубам Продажи и Остатки , но только по фирме Ф1.

А если пользователь входит и в группу СП1 и в группу Ф1 , то получается что он может видеть:
1.всю информацию по кубу Продаж по всем фирмам: Ф1 и Ф2 и Ф3
2.и информацию по фирме Ф1 в кубе Остатки

Т.е. получается, что приоритет разрешения выше, чем приоритет запрета - как сделать наооборот?
...
Рейтинг: 0 / 0
29.03.2005, 11:45
    #32985778
EugenT
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Roles в виде матричной структуры
EugenTПодскажите можно ли в AS настроить роли в виде матричной структуры, а не древо-видной основываясь на группах пользователей (т.е. не указавать самих пользователей - т.к. их очень много) и можно ли поменять приоритеты (запрета/разрешения)?

Описание рисунка:
Организационная структура - это группы пользователей в AD относительно каждой организации (пример, Ф1/Ф2/Ф3)
Структурные подразделения - это дополнительные группы пользователей в AD - отделы фирмы (пример, СП1=финансисты/СП2=экономисты)

Для каждой фирмы (из Организационной структуры) создается отдельная роль в Database Roles с указанием что можно видеть, а что нельзя.
И для каждого структурного подразделения создается отдельная роль в Database Roles.

Пользователи, которые входят в группу СП1 видят весь куб Продаж (т.е. по всем фирмам: Ф1 и Ф2 и Ф3) - куб Остатки данные пользователи не видят.
Пользователи, которые входят в группу Ф1 видят информацию по кубам Продажи и Остатки , но только по фирме Ф1.

А если пользователь входит и в группу СП1 и в группу Ф1 , то получается что он может видеть:
1.всю информацию по кубу Продаж по всем фирмам: Ф1 и Ф2 и Ф3
2.и информацию по фирме Ф1 в кубе Остатки

Т.е. получается, что приоритет разрешения выше, чем приоритет запрета - как сделать наооборот?

Забыл добавить, а хотелось бы, чтобы пользователь (который входит и в СП1 и в Ф1 ) мог видеть, только информацию по кубу Продажи и только по фирме Ф1
...
Рейтинг: 0 / 0
29.03.2005, 19:28
    #32987229
Mosha
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Roles в виде матричной структуры
EugenTА если пользователь входит и в группу СП1 и в группу Ф1, то получается что он может видеть:
1.всю информацию по кубу Продаж по всем фирмам: Ф1 и Ф2 и Ф3
2.и информацию по фирме Ф1 в кубе Остатки
3. Забыл добавить, а хотелось бы, чтобы пользователь (который входит и в СП1 и в Ф1) мог видеть, только информацию по кубу Продажи и только по фирме Ф1
А Вы себе не противоречите ? Т.е. у Вас получилось, чыо если пользователь принадлежит двум группам он видим меньше чем если бы он принадлежал только одной.

Моша
----------------------------------------------------
This posting is provided "AS IS" with no warranties, and confers no rights
...
Рейтинг: 0 / 0
29.03.2005, 22:57
    #32987470
Dmitry Biryukov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Roles в виде матричной структуры
имхо, тут надо создавать роль для каждой ячейки матрицы, а НЕ для строк и столбцов. тогда всё будет ОК
...
Рейтинг: 0 / 0
29.03.2005, 23:50
    #32987497
Владимир Штепа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Roles в виде матричной структуры
Концепция объединения наборов прав при членстве в различных группах является основополагающей.
Вам необходимо указывать не "что можно видеть", а "что нельзя видеть" Тогда при членстве в двух группах вы получите именно то что вам надо, ведь

NOT(NOT(A) UNION NOT(B)) == A INTERSECT B
...
Рейтинг: 0 / 0
30.03.2005, 11:17
    #32988056
EugenT
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Roles в виде матричной структуры
Mosha EugenTА если пользователь входит и в группу СП1 и в группу Ф1, то получается что он может видеть:
1.всю информацию по кубу Продаж по всем фирмам: Ф1 и Ф2 и Ф3
2.и информацию по фирме Ф1 в кубе Остатки
3. Забыл добавить, а хотелось бы, чтобы пользователь (который входит и в СП1 и в Ф1) мог видеть, только информацию по кубу Продажи и только по фирме Ф1
А Вы себе не противоречите ? Т.е. у Вас получилось, чыо если пользователь принадлежит двум группам он видим меньше чем если бы он принадлежал только одной.

Все правильно. Идея такая, чтобы права у пользователя (который входит и в СП1 и в Ф1) становильсь равными пересейчению прав, а не сложению!

backfireКонцепция объединения наборов прав при членстве в различных группах является основополагающей.
Вам необходимо указывать не "что можно видеть", а "что нельзя видеть" Тогда при членстве в двух группах вы получите именно то что вам надо, ведь
NOT(NOT(A) UNION NOT(B)) == A INTERSECT B

Получается следующим образом:
1.Пользователям, которые входят в группу Ф1 запрещаем на уровне Dimension - Фирмы все (Ф2/Ф3) кроме Ф1 (т.е.Custom-Select all members)
2.Пользователям, которые входят в группу СП1 зарещаем Dimension-Фирмы (т.е. Fully Restricted)

Если пользователь входит СП1 и Ф1 - он не может посмотреть куб Продаж вообще! Может как-то иначе нужно дать права?

Dmitry Biryukov
имхо, тут надо создавать роль для каждой ячейки матрицы, а НЕ для строк и столбцов. тогда всё будет ОК

Добавил дополнительный столбец в таблицу Фирмы, где указал Домен\Логин пользователя, который может просматривать информацию по конкретной фирме в Dimension-Фирмы в MemberProperties добавил данный столбец (Access). Но вот не могу понять почему в MDX Sample Application все отрабатывает, а в Cell Security ругается!?
Код: plaintext
1.
2.
3.
select Filter({[Фирмы].[Наименование].Members},Instr([Фирмы].CurrentMember.Properties("Access"),"MyDomen\UserX")<> 0 ) on  0 ,
 {[Measures].[Кол]} on  1 
from
 [Продажи]
"MyDomen\UserX" (пример для теста)- заменяю на функцию UserName

А в Cell Security пишу
Код: plaintext
1.
Filter({[Фирмы].[Наименование].Members},Instr([Фирмы].CurrentMember.Properties("Access"),"MyDomen\UserX")<> 0 )
"MyDomen\UserX" (пример для теста)- заменяю на функцию UserName

Получаю ошибку! Может чего-то не хватает?
...
Рейтинг: 0 / 0
30.03.2005, 11:35
    #32988106
EugenT
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Roles в виде матричной структуры
Для случая с Cell Security - все решилось без фильтра:
Код: plaintext
1.
2.
Instr( 1 ,[Фирмы].CurrentMember.Properties("Access"),"MyDomen\UserX")> 0 
 или
Instr( 1 ,[Фирмы].CurrentMember.Properties("Access"),UserName)> 0 
...
Рейтинг: 0 / 0
30.03.2005, 11:51
    #32988146
Владимир Штепа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Roles в виде матричной структуры
Евнгений, позвольте полюбопытствоывать, а что за front-end вы используете для работы с MS AS?
...
Рейтинг: 0 / 0
30.03.2005, 13:52
    #32988564
EugenT
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Roles в виде матричной структуры
backfireЕвнгений, позвольте полюбопытствоывать, а что за front-end вы используете для работы с MS AS?
MS Excel 2003 (он как раз и не может отобразить куб для пользователя если у него роли настроены таким образом)
...
Рейтинг: 0 / 0
30.03.2005, 14:39
    #32988749
Владимир Штепа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Roles в виде матричной структуры
Немного оффтопик.

В далеком 2001 году когда я еще писал на VB, я имел горячую но бесплодную любовь с ролями в AS. Т.к. у меня самописный Front End, коротый общается с AS исключительно через опять же саморисное MiddleWare, то я отказался от использования ролей в AS и потрудился написать собственную систему безопасности о чем ни на минуту не жалею.
...
Рейтинг: 0 / 0
30.03.2005, 15:43
    #32989021
Alex Fox
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Roles в виде матричной структуры
2 backfire
Если не затруднит - "своя безопасность" это в смысле ограничивать входные данные для запросов?
...
Рейтинг: 0 / 0
30.03.2005, 15:59
    #32989093
Владимир Штепа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Roles в виде матричной структуры
Нечто в этом роде. "запрос" внутри приложения имеет объектную структуру и переводится в MDX только на "сервер приложений", где и исполдняется. Поэтому:
front end, хоть и Windows приложение, но кроме .Net Runtime не требует ничего (ни MDAC, ни PTS).
PTS клиентом явдяется "сервер приложений" поэтому проблем потребления памяти и CPU на front end в принципе нет.


1 Ступень. Пользователь может слабать запрос, только из того на что имеет права.
2 Ступень. Даже если "серверу приложений" будет передан "запрос" с превышением полномочий, то он отфильтрует что надо.
Вторая ступень в нормальный ситуациях не работает, за исключением, если роль изменили, а front end уже был запущен и пользователь составил запрос исходя их старой версии роли.
...
Рейтинг: 0 / 0
30.03.2005, 16:26
    #32989192
Alex Fox
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Roles в виде матричной структуры
Спасибо.
...
Рейтинг: 0 / 0
30.03.2005, 22:40
    #32989876
Mosha
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Roles в виде матричной структуры
backfire2 Ступень. Даже если "серверу приложений" будет передан "запрос" с превышением полномочий, то он отфильтрует что надо
Т.е. это означает что пользователь ограничен в том что он может сделать ? Например, он не может определить собственные calculated members ?

Моша
----------------------------------------------------
This posting is provided "AS IS" with no warranties, and confers no rights
...
Рейтинг: 0 / 0
30.03.2005, 22:56
    #32989888
Владимир Штепа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Roles в виде матричной структуры
Mosha backfire2 Ступень. Даже если "серверу приложений" будет передан "запрос" с превышением полномочий, то он отфильтрует что надо
Т.е. это означает что пользователь ограничен в том что он может сделать ? Например, он не может определить собственные calculated members ?

Моша
----------------------------------------------------
This posting is provided "AS IS" with no warranties, and confers no rights

Это совершенно не так. Кому позволено создавать CM, тот может их создавать.
...
Рейтинг: 0 / 0
31.03.2005, 09:02
    #32990098
Mosha
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Roles в виде матричной структуры
backfireЭто совершенно не так. Кому позволено создавать CM, тот может их создавать.
Это интересно ! Вы не могли бы обьяснить, как Вы тогда контролируете security на middleware ? Допустим пользователь может видеть только данные по Гановеру, но не по всей Германии. Как Вы контролируете что в выражении calculated member, он не вставит Германию ?

Моша
----------------------------------------------------
This posting is provided "AS IS" with no warranties, and confers no rights
...
Рейтинг: 0 / 0
31.03.2005, 10:42
    #32990285
Владимир Штепа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Roles в виде матричной структуры
Mosha backfireЭто совершенно не так. Кому позволено создавать CM, тот может их создавать.
Это интересно ! Вы не могли бы обьяснить, как Вы тогда контролируете security на middleware ? Допустим пользователь может видеть только данные по Гановеру, но не по всей Германии. Как Вы контролируете что в выражении calculated member, он не вставит Германию ?

Моша
----------------------------------------------------
This posting is provided "AS IS" with no warranties, and confers no rights


Все гораздо проще. Создавать CM "руками", т.е. писать MDX, могут только администраторы. Все остальные создают только элементарные "CM" только из видимых (допустимых) членов измерений в визуальном конструкторе, где MDX выражение даже не показывается. Простым пользователям direct MDX просто не дан.
...
Рейтинг: 0 / 0
31.03.2005, 10:48
    #32990303
Mosha
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Roles в виде матричной структуры
ОК, т.е. мое начальное предположение что пользователи не могут создавать собственные calculated members было верным. Они могут делать только то что позволяет UI, но не вставлять собственный MDX. Это я не критикую, я просто пытаюсь понять. А как Вы реализовали режим visual totals без поддержки сервера ?

Моша
----------------------------------------------------
This posting is provided "AS IS" with no warranties, and confers no rights
...
Рейтинг: 0 / 0
31.03.2005, 11:15
    #32990410
Владимир Штепа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Roles в виде матричной структуры
MoshaОК, т.е. мое начальное предположение что пользователи не могут создавать собственные calculated members было верным. Они могут делать только то что позволяет UI, но не вставлять собственный MDX. Это я не критикую, я просто пытаюсь понять. А как Вы реализовали режим visual totals без поддержки сервера ?

Моша
----------------------------------------------------
This posting is provided "AS IS" with no warranties, and confers no rights

А нельзя ли на конкретном примере, что то я не понял, какое отношение это имеет к безопасности?
...
Рейтинг: 0 / 0
31.03.2005, 11:26
    #32990443
Mosha
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Roles в виде матричной структуры
Я имел в виду visual totals с точки зрения security. Т.е. если пользователь видит только Гановер и Гамбург, то когда он смотрит на всю Германию, то результат есть сумма только Гановера и Гамбурга а не настоящая сумма. Это то что называется visual totals.

Моша
----------------------------------------------------
This posting is provided "AS IS" with no warranties, and confers no rights
...
Рейтинг: 0 / 0
31.03.2005, 11:42
    #32990504
Владимир Штепа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Roles в виде матричной структуры
MoshaЯ имел в виду visual totals с точки зрения security. Т.е. если пользователь видит только Гановер и Гамбург, то когда он смотрит на всю Германию, то результат есть сумма только Гановера и Гамбурга а не настоящая сумма. Это то что называется visual totals.

Моша
----------------------------------------------------
This posting is provided "AS IS" with no warranties, and confers no rights

Ах это вы имели ввиду. Так это просто.

Если пользователю даны Ганновер и Гамбург, то он видит сумму Ганновер и Гамбург (в случае DC меры, DC для множества {Ганновер, Гамбург})
и Германию он не видит вообще ни при каком раскладе . Для него в измерении 0-й уровень начинается с Ганновер и Гамбург.
...
Рейтинг: 0 / 0
31.03.2005, 11:46
    #32990518
Mosha
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Roles в виде матричной структуры
Я понял - но это как-то радикально. А что если он может видеть всю Германию, но только некоторые города в России. Тоже измерение начнется с уровня Город ?

Моша
----------------------------------------------------
This posting is provided "AS IS" with no warranties, and confers no rights
...
Рейтинг: 0 / 0
31.03.2005, 12:02
    #32990582
Владимир Штепа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Roles в виде матричной структуры
MoshaЯ понял - но это как-то радикально. А что если он может видеть всю Германию, но только некоторые города в России. Тоже измерение начнется с уровня Город ?

Моша
----------------------------------------------------
This posting is provided "AS IS" with no warranties, and confers no rights

Простому use case - простой ответ.

если ограничение стоит на многоуровневом измерении на элементы из нескольких уровней, то см. скриншот.


А вообще такие вещи лучше один раз самому пощупать, но это уже за пределами форума.
...
Рейтинг: 0 / 0
31.03.2005, 12:03
    #32990588
Владимир Штепа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Roles в виде матричной структуры
в догонку
...
Рейтинг: 0 / 0
31.03.2005, 12:24
    #32990657
Владимир Штепа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Roles в виде матричной структуры
Теперь вопрос Вам, Моша.

Если в Юконе задан SCOPE, то что произойдет если внутри SCOPE в CM будет предпринята попытка выйти за пределы SCOPE, например с помощью .CurrentMember.Parent?
...
Рейтинг: 0 / 0
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / Roles в виде матричной структуры / 25 сообщений из 33, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]