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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 28.07.2015, 09:54   #1  
Pandasama is offline
Pandasama
Участник
 
457 / 137 (5) +++++
Регистрация: 11.08.2014
Адрес: Барнаул
Настройки RLS в зависимости от имени пользователя
Добрый день.

Ax 2012.
Есть необходимость ограничить пользователям права доступа к определенным записям, фильтруя их по некоторым параметрам - например, аналитикам. Каждому пользователю должен быть разрешен доступ к записям только с каким-то набором аналитик.

Можно ли это сделать стандартными средствами, не определяя для каждого пользователя свою роль (т.е. не создавая множество ролей, с практически одинаковыми RLS, которые будут отличаться только параметром фильтра) ?
Старый 28.07.2015, 10:03   #2  
Vasiliy Petrovich is offline
Vasiliy Petrovich
Участник
 
83 / 17 (1) ++
Регистрация: 26.06.2015
можно
в ренже в скобках надо писать что-то типа (curuser())
причем эти методы можно расширять путем добавления в какой-то класс
точнее искать надо, может кто вспомнит точнее, напишет
если не ответят, я поищу
Старый 28.07.2015, 10:34   #3  
Logger is offline
Logger
Участник
Лучший по профессии 2015
Лучший по профессии 2014
 
3,952 / 3230 (115) ++++++++++
Регистрация: 12.10.2004
Адрес: Москва
Записей в блоге: 2
currentUserId()

и еще куча полезного в
\Classes\SysQueryRangeUtil
Старый 28.07.2015, 11:40   #4  
gl00mie is offline
gl00mie
Участник
MCBMSS
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,684 / 5798 (201) ++++++++++
Регистрация: 28.11.2005
Адрес: Москва
Записей в блоге: 3
Цитата:
Сообщение от Pandasama Посмотреть сообщение
Ax 2012. Каждому пользователю должен быть разрешен доступ к записям только с каким-то набором аналитик. Можно ли это сделать стандартными средствами?
Если вам нужно ограничить доступ именно по наборам фин. аналитик (к примеру, показывать пользователю заказы на продажу с определенными значениями фин. аналитики "Подразделение" в шапке), и если вы знаете, как хранятся наборы кодов фин.аналитик в 2012-й, то поймете, что одними настройками вы, скорее всего, ничего толкового не сделаете. Вероятно, вам придется создать т.н. конструктив XDS (extensible data security construct) и использовать его в политике XDS, иначе вы рискуете получить такую "бороду" из join'ов, что формы (и код! ведь XDS по умолчанию применяется и к любым запросам из кода) перестанут работать с приемлемой скоростью.
Хорошая новость в том, что на очень многих стандартных таблицах уже есть индекс по полю DefaultDimension, так что конструктив XDS, содержащий ссылки на доступные пользователю наборы кодов аналитик, будет применяться к запросам весьма эффективно.
Старый 28.07.2015, 12:33   #5  
sukhanchik is offline
sukhanchik
Administrator
Аватар для sukhanchik
MCBMSS
Злыдни
Лучший по профессии 2015
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,317 / 3547 (125) ++++++++++
Регистрация: 13.06.2004
Адрес: Москва
Цитата:
Сообщение от Pandasama Посмотреть сообщение
Добрый день.

Ax 2012.
Есть необходимость ограничить пользователям права доступа к определенным записям, фильтруя их по некоторым параметрам - например, аналитикам. Каждому пользователю должен быть разрешен доступ к записям только с каким-то набором аналитик.

Можно ли это сделать стандартными средствами, не определяя для каждого пользователя свою роль (т.е. не создавая множество ролей, с практически одинаковыми RLS, которые будут отличаться только параметром фильтра) ?
\Security\Policies - Это и есть политики XDS. Одну политику можно применить к нескольким ролям. Также, если не получится с настройкой фильтра - можно дописать код вручную в методе XDS на таблице (например, \Data Dictionary\Tables\HcmMyDepartments\Methods\xds)

Вот тут можно почитать подробно:
https://www.microsoft.com/en-us/down...s.aspx?id=3110
__________________
Возможно сделать все. Вопрос времени

Последний раз редактировалось sukhanchik; 28.07.2015 в 12:35.
Теги
ax2012, rls, безопасность

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Как перенести настройки пользователя Varmen DAX: Администрирование 1 06.03.2009 21:39
Особенности настройки RLS на склад DreamCreator DAX: Администрирование 0 19.02.2009 17:59
Как применить текущие настройки пользователя ко всем пользователям компании? wind DAX: Администрирование 2 21.09.2007 13:01
Старт АОС от имени пользователя egorych DAX: Администрирование 5 19.09.2007 12:52
Настройки пользователя для всех пользователей DreamCreator DAX: Программирование 1 27.01.2005 10:51

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

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

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