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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 19.08.2015, 09:39   #1  
Snow78 is offline
Snow78
Участник
Аватар для Snow78
 
4 / 36 (2) +++
Регистрация: 25.01.2007
XDS – Наложение 2 и более политик на одну таблицу. Есть ли решение?
Здравствуйте уважаемые форумчане!
Мне потребовалось ограничить список «Настраиваемых аналитик» (FinancialDimensionTag) для пользователя.
Задача вроде тривиальная – У пользователя User1 должны выводиться значения «1,2», у пользователя User2 должны выводиться значения «3,4». Таких пользователей много и стоит вопрос замещения одних пользователей другими. Это должно решаться Ролями безопасности (ушел пользователь в отпуск – перекинул его роль другому пользователю), прописывать под каждый конкретный случай комбинаций значений XDS накладно.

Решение такое данного примера – создать 2 (3,4,5 ,n) XDS policy, создать 2 (3,4,5,n) роли под каждую XDS Policy. Применить одну роль к первому пользователя, вторую ко второму и допустим начальнику применить обе роли чтоб видел все значения группы.
Решение -
1. Создал query FinancialDimensionTagQuery и наложил Range на value (1,2), В Политике безопасности использовал этот query и наложил на роль A1 пользователю User1. Все прекрасно работает, пользователю выводятся только значения 1 и 2.
2. Создал еще одну роль A2 и ограничил уже значения 3 и 4 новой политикой безопасности.
3. Если к пользователю применять роль A1 или A2 значения выводятся, НО если применить обе роли пользователю, то начинает выводится пустой список.

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

Подскажите пожалуйста, как вы решили подобную задачу.
Используемая система - Dynamics AX 2012 R3 CU8

Последний раз редактировалось Snow78; 19.08.2015 в 09:41.
Старый 19.08.2015, 10:17   #2  
gl00mie is offline
gl00mie
Участник
MCBMSS
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,684 / 5798 (201) ++++++++++
Регистрация: 28.11.2005
Адрес: Москва
Записей в блоге: 3
А что если использовать конструктив XDS? См. Microsoft Dynamics AX 2012 : справочник профессионала, Глава 11. Контроль доступа,лицензирование и конфигурирование. Вкратце, нужно создать временную таблицу типа TempDB, которая будет заполняться доступными для пользователя кодами аналитик, и на ней реализовать метод xds(), который будет ее заполнять. Временная таблица затем используется в запросе, ограничивающем доступные значения.
См., например, \Data Dictionary\Tables\MyLegalEntitiesForXDS\Methods\xds и \Queries\DirRestrictViewPartyTableInLegalEntity.

Последний раз редактировалось gl00mie; 19.08.2015 в 10:21. Причина: пример
За это сообщение автора поблагодарили: Snow78 (1), Kabardian (2), Dreadlock (3).
Теги
ax2012, security, xds

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
daxserver: Best Practices, Tips and Tricks for Implementing XDS (Extensible Data Security) policies Blog bot DAX Blogs 0 27.06.2013 06:16
Динамическое изменение прав доступа на одну таблицу DreamCreator DAX: Программирование 7 15.07.2009 16:31
Аксапта как фронт-офисное решение в рознице. vc DAX: Функционал 15 11.02.2008 10:42
Ситуация с документацией. Есть ли решение? StoneRoller DAX: Прочие вопросы 45 26.08.2003 19:54
Русская локализация Axapta 3 ? SlavaK DAX: Администрирование 59 01.07.2003 22:38
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

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

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