Кто может создавать дубли?

13.06.20

Администрирование - Роли и права

Ролей в ЕРП очень много, вручную не проконтролировать. Как определить у каких пользователей есть права на объект? Как определить роль, отвечающую за тот или иной объект метаданных? Какой профиль нужно назначить группе доступа? Куда отнести пользователя?

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
Пользователи с правами
.erf 6,17Kb ver:1.0
1 2 500 руб. Купить
Права на объект
.erf 6,32Kb ver:1.0
1 2 500 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Для ответа на эти вопросы сначала использовал конфигуратор и форму “Все роли”. Находишь там нужный объект и скролишь по табличке вправо. 

Но времени отнимает немало. Особенно, если объектов таких больше одного. Когда проблема встала остро родился запрос:

ВЫБРАТЬ
спрПрофилиГруппДоступа.Ссылка КАК Профиль,
регПраваРолей.ОбъектМетаданных КАК ОбъектМетаданных,
регПраваРолей.Роль КАК Роль,
регПраваРолей.Изменение КАК Изменение,
регПраваРолей.Добавление КАК Добавление,
регПраваРолей.ЧтениеБезОграничения КАК ЧтениеБезОграничения,
регПраваРолей.ИзменениеБезОграничения КАК ИзменениеБезОграничения,
регПраваРолей.ДобавлениеБезОграничения КАК ДобавлениеБезОграничения,
регПраваРолей.Просмотр КАК Просмотр,
регПраваРолей.Редактирование КАК Редактирование,
регПраваРолей.ИнтерактивноеДобавление КАК ИнтерактивноеДобавление
ИЗ
РегистрСведений.ПраваРолей КАК регПраваРолей
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ПрофилиГруппДоступа.Роли КАК спрПрофилиГруппДоступа
ПО (регПраваРолей.Роль = спрПрофилиГруппДоступа.Роль)
ГДЕ
регПраваРолей.ОбъектМетаданных В (&справочники)
И регПраваРолей.Изменение = ИСТИНА

Заполняем в параметре запроса таблицу значений с анализируемыми объектами и получаем перечень ролей и профилей, в которых разрешено их изменение:

Следующий запрос ответит на вопрос кто из пользователей имеет права на редактирование объектов из списка:

ВЫБРАТЬ
спрРолиПрофиляГруппыДоступа.Ссылка КАК Профиль,
регПраваРолей.ОбъектМетаданных КАК ОбъектМетаданных,
регПраваРолей.Роль КАК Роль,
регПраваРолей.Изменение КАК Изменение,
регПраваРолей.Добавление КАК Добавление,
регПраваРолей.ЧтениеБезОграничения КАК ЧтениеБезОграничения,
регПраваРолей.ИзменениеБезОграничения КАК ИзменениеБезОграничения,
регПраваРолей.ДобавлениеБезОграничения КАК ДобавлениеБезОграничения,
регПраваРолей.Просмотр КАК Просмотр,
регПраваРолей.Редактирование КАК Редактирование,
регПраваРолей.ИнтерактивноеДобавление КАК ИнтерактивноеДобавление
ПОМЕСТИТЬ втПрофилиСПравамиНаИзменение
ИЗ
РегистрСведений.ПраваРолей КАК регПраваРолей
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ПрофилиГруппДоступа.Роли КАК спрРолиПрофиляГруппыДоступа
ПО регПраваРолей.Роль = спрРолиПрофиляГруппыДоступа.Роль
ГДЕ
регПраваРолей.Изменение = ИСТИНА
И регПраваРолей.ОбъектМетаданных В(&справочники)
;
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
спрПользователиГруппДоступа.Пользователь КАК Пользователь,
вт.Профиль КАК Профиль,
вт.ОбъектМетаданных КАК ОбъектМетаданных,
вт.Роль КАК Роль,
вт.Изменение КАК Изменение,
вт.Добавление КАК Добавление,
вт.ЧтениеБезОграничения КАК ЧтениеБезОграничения,
вт.ИзменениеБезОграничения КАК ИзменениеБезОграничения,
вт.ДобавлениеБезОграничения КАК ДобавлениеБезОграничения,
вт.Просмотр КАК Просмотр,
вт.Редактирование КАК Редактирование,
вт.ИнтерактивноеДобавление КАК ИнтерактивноеДобавление
ИЗ
втПрофилиСПравамиНаИзменение КАК вт
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ГруппыДоступа.Пользователи КАК спрПользователиГруппДоступа
ПО (спрПользователиГруппДоступа.Ссылка.Профиль = вт.Профиль)
ГДЕ
НЕ спрПользователиГруппДоступа.Пользователь ЕСТЬ NULL
УПОРЯДОЧИТЬ ПО
вт.Профиль,
спрПользователиГруппДоступа.Пользователь

В результате нам доступен список пользователей, имеющих право редактировать объекты из списка:

Но если просто отключить роль в профиле, может возникнуть ситуация, когда нужно прочитать данные из проверяемого объекта. И эти права нужно сохранить. Тогда запрос был модифицирован в третий раз:

ВЫБРАТЬ
	регПраваРолей.ОбъектМетаданных КАК ОбъектМетаданных,
	регПраваРолей.Роль КАК Роль,
	регПраваРолей.Изменение КАК Изменение,
	регПраваРолей.Добавление КАК Добавление,
	регПраваРолей.ЧтениеБезОграничения КАК ЧтениеБезОграничения,
	регПраваРолей.ИзменениеБезОграничения КАК ИзменениеБезОграничения,
	регПраваРолей.ДобавлениеБезОграничения КАК ДобавлениеБезОграничения,
	регПраваРолей.Просмотр КАК Просмотр,
	регПраваРолей.Редактирование КАК Редактирование,
	регПраваРолей.ИнтерактивноеДобавление КАК ИнтерактивноеДобавление
ПОМЕСТИТЬ втПраваНаЧтение
ИЗ
	РегистрСведений.ПраваРолей КАК регПраваРолей
ГДЕ
	регПраваРолей.Просмотр = ИСТИНА
	И регПраваРолей.ОбъектМетаданных В(&справочники)
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
	спрРолиПрофиляГруппыДоступа.Ссылка КАК Профиль,
	регПраваРолей.ОбъектМетаданных КАК ОбъектМетаданных,
	регПраваРолей.Роль КАК Роль,
	регПраваРолей.Изменение КАК Изменение,
	регПраваРолей.Добавление КАК Добавление,
	регПраваРолей.ЧтениеБезОграничения КАК ЧтениеБезОграничения,
	регПраваРолей.ИзменениеБезОграничения КАК ИзменениеБезОграничения,
	регПраваРолей.ДобавлениеБезОграничения КАК ДобавлениеБезОграничения,
	регПраваРолей.Просмотр КАК Просмотр,
	регПраваРолей.Редактирование КАК Редактирование,
	регПраваРолей.ИнтерактивноеДобавление КАК ИнтерактивноеДобавление
ПОМЕСТИТЬ втПрофилиСПравамиНаИзменение
ИЗ
	РегистрСведений.ПраваРолей КАК регПраваРолей
		ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ПрофилиГруппДоступа.Роли КАК спрРолиПрофиляГруппыДоступа
		ПО регПраваРолей.Роль = спрРолиПрофиляГруппыДоступа.Роль
ГДЕ
	регПраваРолей.Изменение = ИСТИНА
	И регПраваРолей.ОбъектМетаданных В(&справочники)
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
	спрПользователиГруппДоступа.Пользователь КАК Пользователь,
	вт.Профиль КАК Профиль,
	вт.ОбъектМетаданных КАК ОбъектМетаданных,
	вт.Роль КАК Роль,
	вт.Изменение КАК Изменение,
	вт.Добавление КАК Добавление,
	вт.ЧтениеБезОграничения КАК ЧтениеБезОграничения,
	вт.ИзменениеБезОграничения КАК ИзменениеБезОграничения,
	вт.ДобавлениеБезОграничения КАК ДобавлениеБезОграничения,
	вт.Просмотр КАК Просмотр,
	вт.Редактирование КАК Редактирование,
	вт.ИнтерактивноеДобавление КАК ИнтерактивноеДобавление
ИЗ
	втПрофилиСПравамиНаИзменение КАК вт
		ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ГруппыДоступа.Пользователи КАК спрПользователиГруппДоступа
		ПО (спрПользователиГруппДоступа.Ссылка.Профиль = вт.Профиль)
ГДЕ
	НЕ спрПользователиГруппДоступа.Пользователь ЕСТЬ NULL

УПОРЯДОЧИТЬ ПО
	вт.Профиль,
	спрПользователиГруппДоступа.Пользователь

И если сформировать его в консоли с выводом временных таблиц, то из временной таблицы втПраваНаЧтение можно подобрать замену для отключаемой роли, дающей слишком много прав.

Для тех же, кто не дружит с консолью, приложил два отчета:

  1. Для списка объектов метаданных выведет перечень ролей и доступных прав

  1. Сформирует список пользователей, которым доступно изменение объектов из списка.

А вообще интересно не изобретал ли я очередной велосипед? Подскажите пожалуйста более удобные способы решения подобных задач в ЕРП.

Отчеты для конфигурации 1С:ERP 2.4.11, тестировалось на платформе 8.3.15.1700.

Вступайте в нашу телеграмм-группу Инфостарт

ERP права роли профили групп доступа

См. также

Инструментарий разработчика Роли и права Запросы СКД Программист Руководитель проекта 1С:Предприятие 8 Платные (руб)

Инструменты для разработчиков 1С 8.3: Infostart Toolkit. Автоматизация и ускорение разработки на управляемых формах. Легкость работы с 1С.

16500 руб.

02.09.2020    247839    1365    421    

1134

Зарплата Роли и права Системный администратор Бухгалтер 1С:Предприятие 8 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Комплексная автоматизация 2.х Молдова Россия Казахстан Бухгалтерский учет Платные (руб)

Расширение позволяет максимально полно ограничить доступ пользователей к данным по заработной плате, а именно закрывает доступ к документам начисления и выплаты заработной платы, не позволяет просматривать бухгалтерские отчеты по счету учета зарплаты а также убирает зарплатные проводки из журнала проводок. Расширение запрещает просматривать платежные документы на выплату зарплаты, так же не доступны регламентные отчеты в ПФР и ИФНС. Расширение предлагает готовые настроенные профили "Бухгалтер без зарплаты", "Только просмотр без зарплаты".

9675 руб.

27.05.2021    53550    448    127    

321

Инструменты администратора БД Инструментарий разработчика Роли и права Программист 1С:Предприятие 8 1C:Бухгалтерия Россия Платные (руб)

Расширение позволяет без изменения кода конфигурации выполнять проверки при вводе данных, скрывать от пользователя недоступные ему данные, выполнять код в обработчиках. Не изменяет данные конфигурации, легко устанавливается практически на любую конфигурацию на управляемых формах.

17000 руб.

10.11.2023    23894    91    42    

101

Инструменты администратора БД Роли и права Системный администратор Программист Пользователь 1С 8.3 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Документооборот 1С:Зарплата и кадры государственного учреждения 3 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Роли… Вы тратите много времени и сил на подбор ролей среди около 2400 в ERP или 1500 в Рознице 2, пытаясь понять какими правами они обладают? Вы все время смотрите права в конфигураторе или отчетах чтоб создать нормальные профили доступа? Вы хотите наглядно видеть какие права дает профиль и редактировать все в простом виде? А может хотите просто указать подсистему и дать права на просмотр и добавление на объекты и не лезть в дебри прав и чтоб обработка сама подобрала нужные роли? Все это теперь стало возможно! Обновление от 17.06.2025, версия 1.3

21960 руб.

06.12.2023    21373    75    10    

107

SALE! 20%

Роли и права 1С:Предприятие 8 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия государственного учреждения 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Управление холдингом 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x Платные (руб)

Универсальная обработка по настройке прав доступа пользователей в 1СЗУП, КА, УТ, ЕРП, ERP, УНФ, Розница, Управление холдингом) и разграничений позволяет в несколько кликов настроить даже самые нестандартные права.

5750 4600 руб.

22.12.2021    34862    193    69    

226

Логистика, склад и ТМЦ Роли и права Программист Бухгалтер Пользователь 1С:Предприятие 8 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Управленческий учет Платные (руб)

Расширение для 1С:Бухгалтерия 3.0, которое позволяет использовать отдельные роли для доступа к складским документам, для доступа к документам раздела "Производство" и для доступа к документам раздела "Покупки".

5084 руб.

21.05.2019    1700989    594    197    

146

Роли и права Системный администратор Программист 1С:Предприятие 8 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия государственного учреждения 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Бухгалтерия автономного учреждения 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x 1С:Управление нашей фирмой 3.0 Платные (руб)

Мучаетесь со списком типовых ролей? Не хотите иметь дело с конфигуратором? Не знаете что делают имеющиеся права в базе? Хотите просто и удобно добавлять и настраивать, по одному клику, доступы и поведение при записи/удалении/проведении/открытии списка/фильтрацию данных в списках или формах выбора для пользователя или группы пользователей и для любого объекта? Не хотите переживать, что при обновлении конфигурации все права и роли слетят? (Обновление от 28.08.2025, версия 1.10)

15000 руб.

21.03.2022    18910    28    55    

51
Для отправки сообщения требуется регистрация/авторизация