Данная публикация является логическим практическим продолжением //infostart.ru/public/182849/ (Обработка универсального обмена XML и информационная безопасность типовых решений)
Дано: БП 3.0, пользователь с набором бухгалтерских ролей. Это главбух и ему нужно иметь возможность изменять дату запрета редактирования данных.
Но право на изменение Регистра сведений ДатыЗапретаИзменения есть только у роли ПолныеПрава. Давать эту роль бухгалтеру нельзя, да и зачем, когда нужен доступ на изменение одного единственного регистра. Конфигурацию менять нельзя. Как быть?
Выход есть! Бухгалтеру необходимо дать роль "Выполнение синхронизации данных" и роль "Использование дополнительных отчетов и обработок".
Загрузить в базу обработку с этой публикации, дать доступ к ней бухгалтеру. И все, он может менять дату запрета редактирования.
Идея обработки в том, что в ней формируется xml файлик загрузки с кодом, который выполняется в привилигированном режиме. Эта обработка вызывает обработку универсального обмена данных XML, загружает с её помощью файл загрузки, который сама же и формирует. При загрузке выполняется код, указанный в (ПередЗагрузкойДанных).
Т.к. у пользователя нет прав на интерактивное открытие формы обработки универсального обмена данными XML и нет прав на добавление/изменение доп обработок и отчетов - он не сможет ни загрузить произвольный файл, ни добавить свою внешнюю обработку. Но может пользоваться только тем, что предоставил ему программист. безопасность соблюдена.
Данная обработка успешно прошла испытание в файловой и серв базе БП 3.0, для других конфгураций, возможно, придется изменить макет который формирует заголовки XML.