Имя: Пароль:
1C
 
Ограничение при полных правах
0 Tyri
 
28.05.24
07:07
Всем привет!
Есть ли возможность обойти полные права?
Есть некоторые доп. реквизиты (Конфигурация ЗУП 3.1) справочника Сотрудники, которые должны быть доступны определенной группе пользователей, от остальных скрыты.
Создала роль, с этой ролью создала профиль и группу, в нее включила нужных пользователей, для остальных кто в эту группу не входит и не имеет админских прав, реквизиты не видны. Как скрыть реквизиты от тех, у кого доступны полные права?
Делаю проверку: Если Не УправлениеДоступом.ЕстьРоль("РедактированиеДопРеквКадры") Тогда... - но пользователи с полными правами автоматически проходят эту проверку.
1 2S
 
28.05.24
07:15
Сделайте от обратного. По-умолчанию скройте, для определнных прав отобразите.
2 Tyri
 
28.05.24
07:29
(1) то же самое...
Элементы[ИмяРеквизита].Видимость = Ложь;
Если УправлениеДоступом.ЕстьРоль("РедактированиеДопРеквКадры") Тогда
Элементы[ИмяРеквизита].Видимость = Истина;
КонецЕсли;
С полными правами вот это условие - УправлениеДоступом.ЕстьРоль("РедактированиеДопРеквКадры") - истина, и реквизит виден даже если я не включала пользователя в группу, у которой есть эта роль
3 2S
 
28.05.24
07:35
(2) А если добавить к условию НЕ ЕстьРоль("ПолныеПрава")?
Коллеги поправят, если что.
4 Волшебник
 
28.05.24
07:45
Если РольДоступна("")
5 Мимохожий Однако
 
28.05.24
07:45
(0) Отключить полные права у всех, кроме админа. Включить пользователям те, права, которые нужны
6 Мультук
 
28.05.24
07:46
(0)

1) Функция УправлениеДоступом.ЕстьРоль(..) скорее всего проверяет, есть ли у пользователя полные права и говорит:
"раз полные права, то и все остальные права есть"

Используйте РольДоступна("ПолныеПрава")

2) Упреждая ваш следующий вопрос
"Я даю пользователю с полными правами роль "тури_РедактированиеСБарбатированиемФизЛиц",
а она почему то не сохраняется", хнык-хнык
Ответ: -- так и было задумано в БСП


3) Скрыть что-то от пользователя с полными правами, тот еще квест


P.S.
Неужели так сложно открыть и посмотреть (в отладке или глазами) что происходит в
УправлениеДоступом.ЕстьРоль

?
7 RAJAH
 
28.05.24
07:52
Пользователь с полными правами может эти ограничения снять.
8 MaximSh
 
28.05.24
08:11
Это же изначально не верное архитектурное решение: ограничивать в правах на данные Полные права.
9 Aleksey
 
28.05.24
08:54
(8) Писатели типовых с тобой не согласны
10 Ногаминебить
 
28.05.24
09:23
(8) Не всегда есть возможность взять и махом разгрести базу в нужное состояние.Это ж не повод не делать вообще никак.
Запрос к ПрофилиГруппДоступа должен помочь если я правильно понял.
Да, это методологически неверно, да юзер с полными правами в теории полезет и сделает себе что захочет, но в жизни почти всегда ограничение нужно не чтоб запретить злодейским злоумышленникам творить свои черные делишки, а просто чтоб случайно не кликали куда ни попадя.
11 Волшебник
 
28.05.24
09:47
(9) Не надо их боготворить
12 dmt
 
28.05.24
09:54
(8) а какое верное?
13 АннаО
 
28.05.24
10:05
Тоже в свое время решала подобные задачи, но пришла к выводу, что все-таки глупо что-то запрещать полным правам, т.к. даже в случае запрета он сам себе может разрешить все что угодно. Отсюда мораль - либо не раздавайте полные права кому не нужно, либо будьте готовы к тому, что они могут все.
14 kauksi
 
28.05.24
10:19
Засуньте доп. реквизиты в расширение.
Сделайте свою форму отображения этих доп. реквизитов, видимую только тем, которые прописаны в определенный регистр сведений. Но прог с полными правами все равно увидят этот регистр, и эти доп реквизиты. хоть запросом, хоть через любой редактор. Задача изначально тупо поставлена. боятся процент годовой премии что увидят?
15 MaximSh
 
28.05.24
10:28
(12) убрать полные права тем кому не положен полный доступ к данным и действиям, дать роли на те действия что выполняет пользователь. Их (ролей) уже более 1700 (в ERP), неужели среди них нет нужных. А нет, так добавить.