Ограничение прав на уровне отборов

26.10.10

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

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

Скачать файлы

Наименование Файл Версия Размер
Конфигурация
.cf 62,12Kb
89
.cf 62,12Kb 89 Скачать

Здравствуйте, уважаемые коллеги. Решил поделится одной наработкой, на звезды и огромное количество плюсов не претендую, только на ваше внимание и минутку определенного времени для оценки такого вида возможности "Ограничения прав".

 

Итак к сути. У меня в конфигурации используется RLS, все как бы хорошо, но наткнулся на проблемку в отчетах. К примеру у пользователя нету прав к документам, у которых отличное подразделение от его права, естественно право на уровне записей я для документов настроил и все отлично работает, в журналах чужие документы не видны, да и в отчетах вроде тоже, все как бы красиво, пока мои "злобные" пользователи меня не переубедили в противоположном.

Взять, к примеру, регистр накопления "Продажи" - это оборотный регистр, в котором есть измерение "Подразделение", пользователь к нему ограничен и если он попытается сформировать отчет он увидит только свои подразделения и информацию к ним, но вот элементарный обход этой ситуации. Пользователь делает в отчете только одну группировку "ДокументПродажи" и увидит все документы даже не его подразделения. Открытие документа конечно не произойдет, но вот сумма продажи уже есть, а пользователю это полностью запрещено (не скажу по каким причинам, такая безопасность практикуется здесь).

Думал.... Переписывать RLS. Но как!? Там уже у меня куча групп пользователей и филиалов, да и ролей полно в самой конфигурации и уже все шаблоны прописаны мной и протестированы...

Ура... Вот оно решение, а что если пользователям, которые ограничены к отчетности, строго  в отборе отчетов программно определять их доступ? И если даже пользователь будет сам этот отбор убивать/изменять, чтобы он проставлялся при переформировании вновь. Вот оно... Начал процесс разработки. Конечно же, тут без кода не обойтись, но и надо его максимально минимизировать. Также встал вопрос "свойств и категорий" и это удалось решить...

Архитектура разработки:

  1. В систему добавлен справочник "ХранениеИзмеренийОтчетов":
    Его реквизиты:
    • Наименование - обработка начало выбора добавлен список выбора текущих отчетов конфигурации, для возможности выбора его из списка;
    • СинонимОтчета - собственно это  и есть синоним отчета конфигурации метаданных (проставляется автоматически от изменения наименования);
    Табличная часть:
    • ИмяИзмерения - здесь надо знать точное имя измерения как оно выглядит в построителе;
    • Представление - это для своего удобства;
    • Назначение - Назначение: свойства/категории. Если данное измерение содержит свойства или категории и ограничения пользователя будут через свойства или категории, то имеет смысл здесь определить этот тип.

  2. Также в систему добавлен регистр сведений ОграничениеОтбораКОтчетам. Структуру данного регистра можно посмотреть в конфигурации.

  3. Добавлены общие модули: "НастройкаДополнительныхПрав", "VWG_СтандартныеОтчеты".

  4. Внесены изменения в отчеты конфигурации, с которыми работают пользователи. В конфигурации примером есть отчет "Продажи".

    А именно в процедурах:

    В процедуру  УстановитьНачальныеНастройки() добавлено:

    //+VWG VWG_СтандартныеОтчеты.УстановитьИспользованиеСвойствИКатегорий(ЭтотОбъект.Метаданные().Имя,УниверсальныйОтчет);
    //-VWG


    И в процедуру СформироватьОтчет(ТабличныйДокумент) добавлено:

    //+VWG
    VWG_СтандартныеОтчеты.ПрименитьОграничениеКИзмерениямОтчета(ЭтотОбъект.Метаданные().Имя,УниверсальныйОтчет);
    //-VWG


Здесь собственно все. Как у меня работает система, показано на скриншотах.

Благодарю за внимание.

 

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

Конфигурационный файл сделан на движке 8.2.10.77.

См. также

AUTO VPN (portable)

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

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

1200 руб.

24.03.2020    14394    22    32    

33

Настройка аутентификации в 1С с использованием стандарта RFC 7519 (JWT)

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

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

27.02.2024    2579    PROSTO-1C    9    

29

Device flow аутентификация, или туда и обратно

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

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

1 стартмани

27.10.2023    1615    platonov.e    1    

23

Анализатор безопасности базы сервера 1С

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

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

5 стартмани

24.04.2023    5437    14    soulner    7    

29

Двухфакторная аутентификация в 1С через Telegram и Email

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

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

2 стартмани

08.12.2022    5961    32    Silenser    12    

23

История одного взлома или проверьте вашу систему на безопасность

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

От клиента клиенту, от одной системы к другой, мы вновь и вновь встречаем одни и те же проблемы и дыры в безопасности. На конференции Infostart Event 2021 Post-Apocalypse Виталий Онянов рассказал о базовых принципах безопасности информационных систем и представил чек-лист, с помощью которого вы сможете проверить свою систему на уязвимость.

26.10.2022    9241    Tavalik    46    

113
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. SergDi 27.10.10 22:50 Сейчас в теме
о боже! Человек, а не проще применить RLS к регистру...
2. ArtfulCrom 22 31.10.10 03:03 Сейчас в теме
Жесть, правда? :o

А представляете насколько легко по этим скриншотам идентифицируется компания для которой коллега пишет такие отчеты :) Регионы Украины и ТМ показаны в открытом виде, идентифицировать чья сеть представляет эти ТМ в этих регионах проще пареной репы :)

Но зачем это узнавать? Как впрочем и зачем весь этот огород вместо Правильно настроенной РЛС :)
3. Rabajaba 354 02.11.10 13:06 Сейчас в теме
RLS на 8.2 не вызывает тех же торможений, что были в 8.1?
4. 1C_Lab 20 03.08.12 23:28 Сейчас в теме
у rls сталкивался с проблемами производительности. взял разработку автора для внедрения в собственную базу. Нравится что можно выполнять настройку отборов по горячему без внесения изменений в кода в режиме предприятия. Автору спс.
5. stas1kbob 59 19.11.13 12:37 Сейчас в теме
хорошие у автора клиенты
6. VTselousov 13.03.15 16:50 Сейчас в теме
Конфигурация УТ 10.3.26 выдает ошибку

{РегистрСведений.ОграничениеОтбораКОтчетам.Форма.ФормаЗаписи.Форма(82)}: Значение не является значением объектного типа (Метаданные)
ИсходнаяТаблица = Пользователь.Метаданные().Имя;
Оставьте свое сообщение