10.05.2016, 14:59 | #1 |
Участник
|
фильтрация в лукапе через плагин: показать всё, что скрыто :)
Приветы.
Задача - в лукапе показывать весь список записей, независимо от того, есть ли права у пользователя на записи или нет (в ролях секьюрити настроено на чтение как подразделение и дочерние, а не организация: соотв. записи соседних подразделения не видятся, а хотелось бы) Список поиска дополнительно фильтруется через настройки формы ("фильтрация связанных записей"), как раз по подразделению, в котором хотим поискать связанные записи. Как думаю должно быть реализовано - плагин на RetrieveMultiple (https://blogs.msdn.microsoft.com/ukc...-modify-views/) только изменять queryExpression не надо, нам надо чтобы сам запрос выполнился из-под пользователя с ролью "сисадмин". чтобы безусловно видеть все записи, а не через всякие OwningBusinessUnit и fn_POARetrieveMultiple(@SystemUserId0, @ObjectTypeCode0)) процедуру. установил этот плагин (он по сути пустой - без кода, пре-степ, синхронный) - сделал Impersonating User у Step-а - на чувака, с сисадмин ролью. Под "урезанным" пользователем - все равно ничего не показывается. Плагин в executionContext + factory/IOrgService показывает правильный гуид в UserId (т.е. имперсонация сработала) Почему так? чего то не догоняю. Может в плагине надо как-то контекст или фактори сервиса изменить ? или может я вообще не в ту степь поехал, и можно сделать как-то попроще? Последний раз редактировалось Eugene.Ostroukhov; 10.05.2016 в 15:02. |
|
10.05.2016, 15:06 | #2 |
Чайный пьяница
|
Плагин без кода, если вы ничего не подменяете - бесполезен. Хотите решить задачу быстро и малой кровью - выполните запрос, который приходит в контексте и подмените результат. Рекомендую также не забывать, что RetrieveMultiple используется не только из лукапа.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
10.05.2016, 15:13 | #3 |
Участник
|
Цитата:
отправить в postOperation ? да, фильтров я потом навешаю, если найду достаточно ограничений, кроме ApplicationOrigin того же |
|
10.05.2016, 15:16 | #4 |
Участник
|
|
|
10.05.2016, 15:18 | #5 |
Участник
|
Цитата:
всем спасибо |
|
11.05.2016, 09:33 | #6 |
Moderator
|
Вы решаете довольно странную задачу. Почему бы просто не дать пользователю соответствующие права? Технически можно настроить роль, где права на AppendTo будут выше чем Read для связываемой записи, но что-то мне подсказывает, это будет часто приводить к ошибкам доступа.
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия. MS Certified Dirty Magic Professional |
|
11.05.2016, 11:12 | #7 |
Участник
|
Цитата:
Сообщение от Артем Enot Грунин
Вы решаете довольно странную задачу. Почему бы просто не дать пользователю соответствующие права? Технически можно настроить роль, где права на AppendTo будут выше чем Read для связываемой записи, но что-то мне подсказывает, это будет часто приводить к ошибкам доступа.
кроме одного момента: они связывают свои данные, с related данными соседних отделов. так, чтобы в итоге получилась паутина связей между данными разрозненных объектов. |
|
12.05.2016, 18:58 | #8 |
Moderator
|
В диалоге лукапа они могут использовать личные представления. Это позволит пользователю увидеть все данные связанного объекта не попадая на карточку. Будете скрывать поля из поиска?
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия. MS Certified Dirty Magic Professional |
|
12.05.2016, 18:59 | #9 |
Moderator
|
p.s. Можно запретить менять представление в настройках лукапа.
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия. MS Certified Dirty Magic Professional |
|
12.05.2016, 19:50 | #10 |
Участник
|
Цитата:
к тому, что кроме представления поиска еще свои может использовать и видеть чужие при этом? 1) они вряд ли когда-то до этого догадаются 2) они не умеют делать свои представления Цитата:
спасибо! |
|
16.05.2016, 13:42 | #11 |
Moderator
|
Да, я говорил о возможной утечке безопасности, которая возможна при попытке ограничить доступ средствами UI или "поднимать" привилегии при выполнении определенной операции
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия. MS Certified Dirty Magic Professional |
|
|
Похожие темы | ||||
Тема | Ответов | |||
Фильтрация лукапа через addCustomView | 7 | |||
Настройка авторизации CRM 2011 через проверку подлинности windows | 1 | |||
Плагин | 3 | |||
Тип сущности, использующей плагин | 2 |
|