RLS на список документа в 8.2 - отображаются <Объект не найден> #530360


#0 by МишельЛагранж
На документ наложено RLS Документ ГДЕ ЛОЖЬ. Запрос RLS отрабатывает - поле Проект закрыто для доступа. Однако в списке документов записи не скрыты - так и торчат с полем <Объект не найден>. Настройка по контрагенту RLS отрабатывает и записи скрывает.
#1 by МишельЛагранж
ТелепатБот, как программно отбор по списку сделать?
#2 by fisher
Попробую догадаться, что речь не о обычном списке документов, а о журнале. Если так - на него тоже надо RLS
#3 by ptiz
А это не журнал?
#4 by МишельЛагранж
, нет, речь идет о списке документов одного вида :) в том и глюк, что на "типовом" RLS про контриков срабатывает, а на проектах - нет.
#5 by МишельЛагранж
ФормаСписка у документа
#6 by МишельЛагранж
да, на журнал тоже надо не забыть RLS поставить.... но не работает RLS на список документа.
#7 by МишельЛагранж
глюк 8.2?
#8 by Живой Ископаемый
2 м... А можешь провести такой эксперимент - сделать пустую базу, с тем же РСЛом, и уже в ней добавить документы... зы. может и глюк, но срабатывает уже когда есть данные, если настроить все предварительно, то может не проявляться - но это просто версия.
#9 by МишельЛагранж
база чистая изначально, с несколькими добавленными документами ))
#10 by Живой Ископаемый
2 окей, выскажу свою мысль иначе - если добавлять новые документы в эту базу, так чтобы фильтр у пользователя срабатывал - они тоже в список попадают с <Объект не найден>, или он полностью фильтруется?
#11 by gzd
<Объект не найден> полностью по всей строке?
#12 by acsent
RLS наложен только на поле проект у документа?
#13 by МишельЛагранж
при добавлении документов - появляются у пользователя в том же виде, как и остальные (с Объект не найден). нет, RLS отрабатывает - <Объект не найден> только в поле, на которое RLS наложен. да. Если наложить RLS на контрагента (типовое) - работает как надо (записи исчезают из списка). Если убрать RLS c поля списка - как положено, все записи на месте, но в запрещенных полях <Объект не найден>.
#14 by simol
Пользователю ссылка справочника проект доступна, потому и отображается в списке
#15 by 1C-Nick
а в форме списка есть поле проект?
#16 by МишельЛагранж
по задумке RLS там не должны отображаться ЛЮБЫЕ записи, содержащие реквизиты (поля), на которые RLS не дал "добрО" (для чего и ставится ГДЕ ЛОЖЬ на чтение документа). Добавил и колонку с Проект - и вот она и отображается в спсике как <Объект не найден>. как раз таки ссылка на элемент Проект недоступна, и пользователь ни найти, ни перейти на неё не может (почему в поле Проект и светится <Объект не найден>) - RLS запретил доступ к элементу справочника. Иначе бы ссылка была найдена и представлена.
#17 by МишельЛагранж
Если бы просто все упиралось в колонку в списке - скрыть колонку, и дело сделано. Вся суть в том, что пользователю сам документ, содержащий ссылку на Проект в виде <Объект не найден> доступен, он его может открыть, но вместо ссылок на этот Проект внутри документа - <Объект не найден>. Что приводит к неверному заполнению документа, если пользователь надумает его перезаписать. Да и вообще, такой документ не имеет смысла - его надо изначально "не показывать".
#18 by simol
ты же пытаешься отсекать не запрещенные документы,а документы содержащие запрещенные проекты. И при этом проверяешь запрещенность по доступности ссылки, а она доступна потому и выводится. А вот название проекта недоступно, потому Объект не найден
#19 by simol
Либо ты rls настроил на реквизиты, а не на объект в целом
#20 by vde69
скорее всего дело так: у пользователя 2 роли, одна дает полный список документов но не имеет разрешение на проект, а вторая имеет RLS и на документы и на справочник при суммировании будет сабж
#21 by МишельЛагранж
так отсечение контрагентов по RLS - тоже самое: отсечение не запрещенных документов, а документов, содержащих запрещенных контрагентов. приходится две роли привлекать - роль Пользователь не имеет прав на документ. роль Менеджер - чтение и изменение с RLS на Контриков и Организации. Менеджер не имеет никаких прав на Контрагенты и Проекты. Пользователь - установлен RLS на справочник Проекты и Контрагенты, и право Чтения на документ с RLS ГДЕ ЛОЖЬ. Нет "...имеет RLS и на документы и на справочник". Получается - править у Менеджера RLS на чтение документа "КонтрагентОрганизацияВШапке" дополнением с Проектом? А никак параллельно - а то ведь если расширять RLS получается: КонтрагентВШапкеОрганизацияВШапкеПроектВВалютеМенеджерРегиона"... В УПП 7 условий RLS, и только 3-4 пересекаются...
#22 by МишельЛагранж
+ *роль Менеджер - чтение и изменение ДОКУМЕНТОВ, с дополнительным RLS на Контриков и Организации.
#23 by vde69
я был прав :) а как решать - думай, вариантов несколько. Главная заковыкра в конкретной реализации...
#24 by МишельЛагранж
это какие несколько? ) Если в типовой встраиваться - то только править RLS у менеджера и во всех ролях.
#25 by acsent
Обычно RLS ставится не на конкретное поле, а на прочие поля
#26 by МишельЛагранж
ставится-то на все, но срабатывает на определенное - которое в запросе RLS проверяется. А проверятся там может и много, и одно. И в разных RLS-запросах :))
#27 by МишельЛагранж
все-таки насчет вариантов можно тему развить подробнее? ))
#28 by vde69
главное правило: не стоит использовать несколько ролей с RLS для одного обьекта по этому тебе нужно сделать дополнительную роль контрагент+проект, а лучше завязать на какую-то общую аналитику
#29 by МишельЛагранж
обычно в 1С у работника несколько ролей. А ему вот нужно еще и Проект. Как совместить несколько ролей? Никак. Механизма наложения нет, а вручную бессмысленно. Поэтому вариантов только два - если у пользователя одна роль - скопировать и доработать её с RLS. Если несколько - доработать каждую роль по каждому документу, куда не надо доступ. Кстати, наложение RLS так же работает, как и роли - т.е. если где-то есть разрешение, то оно превуалирует над запрещением?
#30 by МишельЛагранж
Вся беда в том, что в типовых уже есть RLS-ограничения, жестко завязанные и ненастраиваемые. Если только заменить типовую на копию своей: есть роль Менеджер, и ему надо еще роль Проект. Тогда можно скопировать роль Менеджер, удалить из нужных доков/объектов RLS типовую, и заменить на RLS, накладываемые на проекты. Но если ему понадобится типовое ограничение на Конриков или Организации - подключение типовой роли ничего не даст: в роли Проекты RLS типовые будут затерты, а это даст нейтразизует запрет из типовой роли - в результате ограничения по контрикам и организациям не будет.
#31 by 1C-Nick
почему не настраиваемые? что мешает переделать шаблоны прав доступа?
#32 by МишельЛагранж
Если бы у всех доков был один шаблон, то да, а так у разных документов - разные шаблоны, и - разные RLS. Общего механизма настройки нет. Надо каждый запрос рассматривать отдельно.
#33 by МишельЛагранж
а можете описать краткие свои варианты - как вообще можно реализовать RLS? например, надо ограничить столбцы в документах и записи в отчетах (RLS на региcтры) - например, по типу цен. Внутри двух ролей. Желательно настройку RLS (пользователям) встроить в Предприятии к остальным RLS (УТ).
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С