AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 02.07.2010, 00:15   #1  
Wamr is offline
Wamr
----------------
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
 
1,737 / 868 (32) +++++++
Регистрация: 15.01.2002
Адрес: Москва
Записей в блоге: 7
глупый вопрос.
а какова цель данного исследования?
За это сообщение автора поблагодарили: oip (1).
Старый 02.07.2010, 08:43   #2  
AGRESSOR is offline
AGRESSOR
Сам.AX
Аватар для AGRESSOR
Самостоятельные клиенты AX
 
28 / 12 (1) ++
Регистрация: 26.04.2010
Адрес: Тюмень
2 Wamr: Цель - предоставить начальству отчет вида Пользователь-Таблица-Суммарный запрос"
Старый 02.07.2010, 09:42   #3  
Alexius is offline
Alexius
Участник
Аватар для Alexius
 
461 / 248 (9) ++++++
Регистрация: 13.12.2001
Цитата:
Сообщение от AGRESSOR Посмотреть сообщение
2 Wamr: Цель - предоставить начальству отчет вида Пользователь-Таблица-Суммарный запрос"
Постановка задачи уже лучше

1. Если босса удовлетворит разграничение в терминах АХ, то можно просто построить запросик по таблицам:
- UserInfo
- UserGroupList
- SysRecordLevelSecurity
- может еще что-то

2. Если нужно именно в виде предиката MS SQL, то
а. Развертываем копию рабочей базы
б. В Class/Info/startupPost добавляем формирование и запуск Query для нужной таблицы с range описанным выше. (не забываем исключить из "праздника" себя любимого )
в. Делаем job/class для запуска в цикле Аксапты под всеми (выбранными) пользователями.
(можно использовать за основу Тестирование прав пользователей. DAX 4.0.)
г. Настраиваем профайлер на базу и запускаем его.
д. Запускаем пункт в
е. Выбираем из профайлера получившиеся запросы и парсим их.

PS.Вариант 1 мне нравиться гораздо больше
За это сообщение автора поблагодарили: mazzy (2), shogel (1), AGRESSOR (1).
Старый 02.07.2010, 10:11   #4  
oip is offline
oip
Axapta
Лучший по профессии 2014
 
2,564 / 1416 (53) ++++++++
Регистрация: 28.11.2005
Записей в блоге: 1
Цитата:
Сообщение от AGRESSOR Посмотреть сообщение
2 Wamr: Цель - предоставить начальству отчет вида Пользователь-Таблица-Суммарный запрос"
Просто предоставить отчет - это не совсем цель. Сам по себе отчет без процедуры обработки данных из него бесполезен. Отчет - это возможный способ достижения цели. Цель - это, например, провести анализ запросов на предмет возможной оптимизации групп. Или проверить, как именно RLS работает в случае нескольких групп. Или еще что-то. Начальство-то что от этого отчета хочет? Может мы придумаем более правильный способ?

Цитата:
Если вы пытаетесь разобраться, как что-либо сделать (а не сообщаете об ошибке), начинайте с описания цели. И только потом описывайте конкретный шаг на пути к ней, который вы оне смогли выполнить.

Зачастую люди, которым необходима техническая помощь, имеют на уме высокоуровневую цель и привязываются к одному из возможных, по их мнению, путей ее достижения. Они просят помочь выполнить один шаг, не отдавая себе отчета в том, что выбрали неверный путь. Чтобы разобраться в этом, может потребоваться много усилий.
За это сообщение автора поблагодарили: AGRESSOR (1).
Старый 02.07.2010, 10:39   #5  
Vadik is offline
Vadik
Модератор
Аватар для Vadik
Лучший по профессии 2017
Лучший по профессии 2015
 
3,631 / 1853 (69) ++++++++
Регистрация: 18.11.2002
Адрес: гражданин Москвы
Цитата:
Сообщение от AGRESSOR Посмотреть сообщение
2 Wamr: Цель - предоставить начальству отчет вида Пользователь-Таблица-Суммарный запрос"
Если у Вас есть ВНЯТНО спроектированная структура групп пользователей, если RLS группы отделены от групп с правами пользователей, достаточно простого как дверь отчета { Пользователь - Имя - Группа - Описание }. Если нет - наведите таки порядок или продолжайте рожать ежиков
__________________
-ТСЯ или -ТЬСЯ ?
Старый 02.07.2010, 10:50   #6  
_scorp_ is offline
_scorp_
Участник
Аватар для _scorp_
MCBMSS
 
488 / 369 (13) ++++++
Регистрация: 25.07.2007
Адрес: Москва
Цитата:
Сообщение от Vadik Посмотреть сообщение
если RLS группы отделены от групп с правами пользователей
К сожалению не во всех версиях AX так можно делать.
Старый 04.07.2010, 11:18   #7  
Vadik is offline
Vadik
Модератор
Аватар для Vadik
Лучший по профессии 2017
Лучший по профессии 2015
 
3,631 / 1853 (69) ++++++++
Регистрация: 18.11.2002
Адрес: гражданин Москвы
Цитата:
Сообщение от _scorp_ Посмотреть сообщение
К сожалению не во всех версиях AX так можно делать
А можно с этого места поподробнее? Например, в каких версиях это нельзя сделать?
__________________
-ТСЯ или -ТЬСЯ ?
Старый 04.07.2010, 12:31   #8  
_scorp_ is offline
_scorp_
Участник
Аватар для _scorp_
MCBMSS
 
488 / 369 (13) ++++++
Регистрация: 25.07.2007
Адрес: Москва
Цитата:
Сообщение от Vadik Посмотреть сообщение
А можно с этого места поподробнее? Например, в каких версиях это нельзя сделать?
Вот. В AX 3.0 RLS-права работают по аддитивному принципу. В AX 4.0 изменили на рестриктивный. В AX 2009 вернули аддитивный. Мне больше нравится реализация в AX 4.0.
Приведу пример почему мне больше нравится настройка RLS-прав в AX 4.0. Пример задачи:
1. Менеджеры должны работать с определенными типами объектов.
2. Каждый менеджер может смотреть продажи по определенным регионам.

Реализация в AX 4.0:
1. Создаю группу пользователей "Менеджер". Для этой группы настраиваю права доступа. (Права на объекты, не RLS.)
2. Создаю столько столько групп пользователей сколько регионов. Для каждой группы устанавливаю RLS-права на свой регион.
3. Настройка прав менеджера сводится к включению его в группу "Менеджер" и если, например, он может видеть продажи трех регионов, то включение его еще в три группы соответствующих регионов.

Реализация в AX 2009
1. Для каждого менеджера создаем отдельную группу.
2. На эту группу настраиваем права.
3. На эту группу настраиваем RLS-права.
4. Включаем менеджера в настроенную группу.

Вся соль заключается в поддержке решения.
1. Разрешить менеджерам работать с отчетом "А". В AX 4.0 нужно для группы
"Менеджер" дать права на отчет "А". В AX 2009 нужно для группы каждого менеджера добавлять права на отчет "А".
2. Дать конкретному менеджеру права на просмотр продаж по дополнительному региону. В AX 4.0 нужно просто "киинуть" этому пользователю RLS-группу соответствующего региона. В AX 3.0 и 2009 нужно для группы этого менеджера править настройку запроса RLS.

Было бы хорошо, если бы когда нибудь дали выбирать администратору какой способ использовать.
За это сообщение автора поблагодарили: sukhanchik (6).
Теги
rls, security, права доступа, права доступа на уровне записей (rls)

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Как преобразовать запрос в SQL-инструкцию Oloops DAX: Программирование 7 07.07.2008 20:38
Поймать SQL запрос при формировании отчета Qaz Qwerty DAX: Программирование 7 12.06.2008 01:46
RLS&Расширенный запрос donMigel DAX: Функционал 14 18.01.2008 13:32
SQL мониторинг + прямой запрос к SQL Alex_KD DAX: Программирование 17 29.05.2007 03:58
SQL Запрос Александр Костоусов DAX: Программирование 5 24.09.2004 12:15

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 03:43.