Установить полные права области данных. Обработка входящих сообщений с типом http://www.1c.ru/SaaS/RemoteAdministration/App/a.b.c.d}SetFullControl.
// Обработка входящих сообщений с типом http://www.1c.ru/SaaS/RemoteAdministration/App/a.b.c.d}SetFullControl.
//
// Параметры:
// ИдентификаторПользователяСервиса - УникальныйИдентификатор,
// ДоступРазрешен - булево, флаг предоставления доступа пользователю к области данных.
//
Процедура УстановитьПолныеПраваОбластиДанных(Знач ИдентификаторПользователяСервиса, Знач ДоступРазрешен) Экспорт
УстановитьПривилегированныйРежим(Истина);
НачатьТранзакцию();
Попытка
ПользовательОбластиДанных = ПолучитьПользователяОбластиПоИдентификаторуПользователяСервиса(ИдентификаторПользователяСервиса);
Если ПользователиСлужебный.ЗапретРедактированияРолей()
И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.УправлениеДоступом") Тогда
МодульУправлениеДоступомСлужебныйВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("УправлениеДоступомСлужебныйВМоделиСервиса");
МодульУправлениеДоступомСлужебныйВМоделиСервиса.УстановитьПринадлежностьПользователяКГруппеАдминистраторы(ПользовательОбластиДанных, ДоступРазрешен);
Иначе
ПользовательИБ = ПолучитьПользователяИБПоПользователюОбластиДанных(ПользовательОбластиДанных);
РольПолныеПрава = Метаданные.Роли.ПолныеПрава;
Если ДоступРазрешен Тогда
Если НЕ ПользовательИБ.Роли.Содержит(РольПолныеПрава) Тогда
ПользовательИБ.Роли.Добавить(РольПолныеПрава);
КонецЕсли;
Иначе
Если ПользовательИБ.Роли.Содержит(РольПолныеПрава) Тогда
ПользовательИБ.Роли.Удалить(РольПолныеПрава);
КонецЕсли;
КонецЕсли;
Если ОбщегоНазначенияКлиентСервер.СравнитьВерсии(СтандартныеПодсистемыСервер.ВерсияБиблиотеки(), "2.3.4.5") >= 0 Тогда
ПользователиСлужебный.ЗаписатьПользователяИнформационнойБазы(ПользовательИБ, Ложь);
Иначе
ПользователиСлужебный.ЗаписатьПользователяИнформационнойБазы(ПользовательИБ, ПользовательОбластиДанных);
КонецЕсли;
КонецЕсли;
ЗафиксироватьТранзакцию();
Исключение
ОтменитьТранзакцию();
ВызватьИсключение;
КонецПопытки;
КонецПроцедуры
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
СообщениеУстановитьПолныеПраваОбластиДанных (БСП)
УстановитьДоступКAPIОбластиДанных (БСП)
УстановитьБлокировкуСеансовОбластиДанных (БСП)
УстановитьПоставляемоеРасширениеВОбластьДанных (БСП)
УстановитьПоставляемуюОбработкуВОбластьДанных (БСП)
Канал FastCode 1C в Телеграм! Шаблоны кода, статьи, полезные советы, курсы по 1С (8К участников)