gifts2017

Меняем данные под пользователем с неполными правами

Опубликовал Павел Колмаков (Stim213) в раздел Администрирование - Защита, права, пароли

Если у пользователя нет прав на изменение даных - думаете, ему нельзя их изменять? А вот и нет. Можно!

Данная публикация является логическим практическим продолжением http://infostart.ru/public/182849/ (Обработка универсального обмена XML и информационная безопасность типовых решений)

Дано: БП 3.0, пользователь с набором бухгалтерских ролей. Это главбух и ему нужно иметь возможность изменять дату запрета редактирования данных.

Но право на изменение Регистра сведений ДатыЗапретаИзменения есть только у роли ПолныеПрава. Давать эту роль бухгалтеру нельзя, да и зачем, когда нужен доступ на изменение одного единственного регистра. Конфигурацию менять нельзя. Как быть?

Выход есть! Бухгалтеру необходимо дать роль "Выполнение синхронизации данных" и роль "Использование дополнительных отчетов и обработок".

Загрузить в базу обработку с этой публикации, дать доступ к ней бухгалтеру. И все, он может менять дату запрета редактирования.

Идея обработки в том, что в ней формируется xml файлик загрузки с кодом, который выполняется в привилигированном режиме. Эта обработка вызывает обработку универсального обмена данных XML, загружает с её помощью файл загрузки, который сама же и формирует. При загрузке выполняется код, указанный в (ПередЗагрузкойДанных).

Т.к. у пользователя нет прав на интерактивное открытие формы обработки универсального обмена данными XML и нет прав на добавление/изменение доп обработок и отчетов - он не сможет ни загрузить произвольный файл, ни добавить свою внешнюю обработку. Но может пользоваться только тем, что предоставил ему программист. безопасность соблюдена.

Данная обработка успешно прошла испытание в файловой и  серв базе БП 3.0, для других конфгураций, возможно, придется изменить макет который формирует заголовки XML.

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

Наименование Файл Версия Размер Кол. Скачив.
Установка даты запрета, обработка
.epf 13,17Kb
17.04.13
37
.epf 13,17Kb 37 Скачать

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Konstantin Konstantin (KonstB) 17.04.13 13:56
Зачем извращаться с файликом - привилегированный режим дает право записи. Перенесите запись на Сервер. Все готово.

У пользователя нет прав на чтение регистра ИнтервалыДокументов (периодический, незавизимый):

&НаКлиенте
Процедура Читать(Команда)
	ЗаписатьНаСервере();
КонецПроцедуры

&НаСервере
Процедура ЗаписатьНаСервере() 
	УстановитьПривилегированныйРежим(Истина);
	
	Рег = РегистрыСведений.ИнтервалыДокументов.СоздатьМенеджерЗаписи();
	Рег.Период			= ТекущаяДата();
	Рег.ВремяНачала 	= НачалоМесяца(ТекущаяДата());
	Рег.ВремяОкончания 	= КонецМесяца(ТекущаяДата());
	Рег.ТипДокумента	= "мой тип";
	Рег.Записать();	
	
	УстановитьПривилегированныйРежим(Ложь);
	
КонецПроцедуры 
...Показать Скрыть


данный код отработает на ура!
dimas103; Bassgood; Рамзес; ZERO_; +4 Ответить 1
2. Роман Ложкин (webester) 17.04.13 15:39
Выход есть! Бухгалтеру необходимо дать роль "Выполнение синхронизации данных" и роль "Использование дополнительных отчетов и обработок".

Дальше читать не стал.
sigmov; wowik; +2 1 Ответить
3. ZERO_ 17.04.13 17:19
Изврат с XML - такой изврат....
(Можно и через Com подключаться...Будет прикольно...)
(1) У меня у склада есть только права на чтение или просмотр, что не мешает им создавать расходные через обработку....
4. Павел Колмаков (Stim213) 18.04.13 10:46
(3) Через Com нельзя. Безопасность нарущается. Придется создавать служебную учетку с полными правами и в обработке писать параметры этой учетки - имя и пароль. И продвинутый пользователь сможет вытащить эту обработку из темпа 1С
5. Oleg karp (Oleg1708) 24.04.13 16:13
Дыры были, дыры есть, дыры будут есть.
6. Zigfridish (Bassgood) 06.05.13 20:59
(0) не понятно только зачем было извращаться с xml...
7. TMV 09.08.13 11:33
(0) Не работает, если ипсользовать как внешнюю обработку, платформа 8.2.15.310
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа