Ограничение доступа к внешним отчетам и обработкам

24.12.13

Администрирование - Информационная безопасность

Как разграничить доступ к внешним отчетам и обработкам, находящимся в справочнике "Внешние обработки" без вмешательства в типовую конфигурацию?

Скачать файл

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

Наименование По подписке [?] Купить один файл
Пример ограничения доступа к внешнему отчету.erf
.erf 16,27Kb
51
51 Скачать (1 SM) Купить за 1 850 руб.

Исходные данные.

  1. Типовая конфигурация, находящаяся на поддержке. Вносить изменения Заказчик категорически отказывается.
  2. Все "нетиповые" отчеты и обработки реализованы внешними и хранятся в справочнике "Внешние обработки".
  3. Высказано пожелание иметь возможность самостоятельно, без привлечения программиста, управлять доступом к вышеуказанным отчетам и обработкам.

Способ реализации.

В отчет (обработку) добавлена табличная часть "Права доступа", в которой перечислены либо список пользователей, либо роли. Галочками пользователь с полными правами может рулить - кому давать доступ, кому нет.

Хранение таблицы прав организовано в регистре сведений "Настройки пользователей", более подробно об этом здесь: "Внешний" справочник или Хранение данных между сеансами работы внешних обработок.

Перед открытием формы происходит заполнение таблицы прав доступа либо из сохраненной ранее настройки, либо значениями по-умолчанию (при первом старте, например).

После этого производится собственно проверка доступа.

Минусы реализации.

  1. Достаточная трудоемкость при наличии большого количества внешних отчетов/обработок.
  2. Некоторая неуниверсальность, поскольку при создании нового отчета/обработки необходимо помнить об этом механизме разграничения прав.

Возможно, минусов еще больше, но как альтернативный вариант реализации, я думаю, имеет право на существование.

Отчет, предлагаемый для скачивания, не содержит функциональной нагрузки и призван только продемонстрировать пример реализации этого механизма.

См. также

Информационная безопасность Системный администратор Программист Платные (руб)

AUTO VPN (portable) - автоматизация подключения пользователей к удаленному рабочему месту или сети посредством создания автоматического VPN (L2TP или L2TP/IPSEC и т.д.) подключения без ввода настроек пользователем (с возможностью скрытия этих настроек от пользователя). Программа автоматически выполняет подключение к VPN серверу и после успешного коннекта , если необходимо, подключение к серверу удаленных рабочих столов (RDP).

1200 руб.

24.03.2020    15365    25    32    

35

Информационная безопасность Программист Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

Предлагается внешняя обработка для просмотра данных в формате ASN1. Есть 2 режима: загрузка из бинарного формата и из BASE64. Реализована функция извлечения всех сертификатов, которые можно найти в ASN1-файле. В дополнении к этому продукту предлагается методическая помощь по вопросам, связанным с технической реализацией криптографии и шифрования в 1С.

2400 руб.

29.08.2016    30053    9    1    

10

Информационная безопасность Пароли Платформа 1С v8.3 Бесплатно (free)

Все еще храните пароли в базе? Тогда мы идем к вам! Безопасное и надежное хранение секретов. JWT авторизация. Удобный интерфейс. Демо конфигурация. Бесплатно.

30.05.2024    6209    kamisov    17    

60

Информационная безопасность Программист Платформа 1С v8.3 Бесплатно (free)

Рассмотрим в статье более подробную и последовательную настройку аутентификации в 1С с использованием распространенной технологии JWT, которая пришла в программу в платформе версии 8.3.21.1302.

27.02.2024    7315    PROSTO-1C    10    

39

Информационная безопасность Программист Платформа 1С v8.3 Абонемент ($m)

Интеграционные решения стали неотъемлемой частью нашей жизни. Правилом хорошего тона в современных приложениях является не давать интегратору доступ к чувствительным данным. Device flow позволяет аутентифицировать пользователя, не показывая приложению чувствительные данные (например: логин и пароль)<br> Рассмотрим Device flow аутентификацию, в приложении, на примере OpenID провайдера Yandex.

1 стартмани

27.10.2023    2410    platonov.e    1    

23

Информационная безопасность Системный администратор Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

Продукты на основе решений 1С уверенной поступью захватывают рынок учётных систем в стране. Широкое распространение программ всегда порождает большой интерес к ним со стороны злоумышленников, а пользователь 1С это одна из дверей в защищённый информационный контур предприятия. Обработка позволяет быстро и комплексно оценить настройки безопасности конкретной базы и возможности пользователя этой базы на сервере. Также можно оценить некоторые аспекты сетевой безопасности предприятия со стороны сервера 1С.

5 стартмани

24.04.2023    6252    20    soulner    8    

32

Информационная безопасность Системный администратор Программист Платформа 1С v8.3 1С:ERP Управление предприятием 2 Абонемент ($m)

1С, начиная с версии платформы 8.3.21, добавили в систему возможность двойной аутентификации. Как это работает: в пользователе информационной базы появилось свойство «Аутентификация токеном доступа» (АутентификацияТокеномДоступа во встроенном языке), если установить этот признак и осуществить ряд манипуляций на встроенном языке, то появляется возможность при аутентификации отправлять HTTP запросы, которые и реализуют этот самый второй фактор. Данное расширение позволяет организовать двухфакторную аутентификацию с помощью электронной почты или мессенджера Telegram.

2 стартмани

08.12.2022    7278    50    Silenser    12    

24
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Lukich66 83 25.12.13 06:29 Сейчас в теме
Без всех этих заморочек,проверку прав доступа можно осуществлять в самом внешнем отчете или обработке. Заказчик явно переусердствует. Вариант решения - любой каприз за ваши деньги. За программистов обидно.
2. dka80 21 25.12.13 06:40 Сейчас в теме
Считаю, что запрещать надо не запускать отчет, а запрещать доступ к определенным данным. То есть, если нет права Расчет зарплаты, например, то хоть зазапускайся, но расчетную ведомость не получишь.
5. TODD22 19 25.12.13 09:22 Сейчас в теме
(2) dka80, не очень такой подход. Тот же ЗУП для того что бы доработанную карточку Т-2(выводятся сведения о компенсации отпуска) в клиент-серверном варианте мог выводить кадровик ему нужно или давать права расчетчика или давать право на чтение соответствующих регистров.
Куда проще ограничить на запуск данной обработки. Чем давать или по сути полные права к подсистеме расчета или лезть в конфигуратор....

Такой подход возможен если у тебя в конфигурации очень гибкая настройка ролей и прав. А если у тебя как в ЗУПе или в БП 2,5 роли...
8. DAnry 9 26.12.13 00:19 Сейчас в теме
Идея интересная, а главное механизм реально осуществим и работает! Согласен с (2) dka80 на 100%, но для этого необходимы изменения типовой конфигурации. Если же конфигурация на поддержке, и чуть не единственный способ что-то изменить - использование механизма внешних отчетов и обработок, представленый способ разграничения доступа - отличный. Еще раз спасибо за идею.
3. TODD22 19 25.12.13 07:26 Сейчас в теме
А чем стандартный RLS не подошёл?
6. Damian 909 25.12.13 10:46 Сейчас в теме
(3) TODD22, тем, что:
1. Изменять конфигурацию нельзя.
2. Пользователь с полными правами должен иметь возможность менять права доступа к отчету/обработке по своему усмотрению
3. Каким Вы видите шаблон ограничений RLS для реализации этой задачи?
11. mikhailovaew 127 16.04.14 14:56 Сейчас в теме
(6) таким, как он реализован в типовых конфигурациях, в том же ЗУП. Там доступ к каждому внешнему отчету можно разрешить для группы или конкретного пользователя. Поэтому расчетчики, например, не видят кадровых отчетов, и наоборот.
mailrum2004; +1 Ответить
4. AltF1 8 25.12.13 09:21 Сейчас в теме
7. Styvi 6 25.12.13 16:41 Сейчас в теме
Как вариант разграничения прав - очень даже нормальный...
Я за то, чтобы конкретную обработку мог пользовать именно тот, кому это положено, а не все, кто имеет доступ к обрабатываемым объектам...
9. vx_gas 32 30.12.13 14:05 Сейчас в теме
а группы пользователей не подойдет для данных целей, добавил в начале группу, а потом уже в группы накидывай или удаляй пользователей как хочется
10. Damian 909 30.12.13 14:54 Сейчас в теме
(9) vx_gas, в текущем примере реализовано ограничение только по списку пользователей и ролей.
Однако, полет фантазии не ограничен ничем :)
12. Al777 04.07.14 09:08 Сейчас в теме
Для меня эта информация оказалась полезной, возьму на вооружение.
13. son_v 3 31.10.14 10:25 Сейчас в теме
Столкнулись с такой же проблемой. Доступ к данным есть у пользователей, но конкретными отчетами/выборками по этим данным имеют право пользоваться не все их них. Работаем в УТ11. Есть мысль запретить пользователям самостоятельно настраивать под себя список отчетов. Но для этого скорее всего придется снимать с поддержки часть объектов.
14. VKuser179541341 15.05.20 12:59 Сейчас в теме
Была аналогичная проблема. Вышел из ситуации следующим образом:
В самой форме отчета добавляем событие ПриОткрытии
В нем проверяем наличие\отсутствие роли и в зависимости от требуемого результата пропускаем работу отчета дальше, либо выводим сообщение с предупреждением и программно закрываем форму.
В моем случае нужно было запретить просмотр внешнеого отчета пользователям с ролью РольМенеджераПродаж

&НаКлиенте
Процедура ПриОткрытии(СтандартнаяОбработка)
	Если ПроверкаРолиНаСервере() Тогда
		Предупреждение("У вас недостаточно прав для просмотра данного отчета", ,"Предупреждение");
		ЭтаФорма.Закрыть();
	КонецЕсли;	
КонецПроцедуры

&НаСервере
Функция ПроверкаРолиНаСервере()
	Возврат РольДоступна("РольМенеджераПродаж");	
КонецФункции
Показать
user599969_admin; +1 Ответить
Оставьте свое сообщение