Как включить привилегированный режим для дополнительных отчетов и обработок

14.10.23

Разработка - БСП (Библиотека стандартных подсистем)

Как отключить безопасный режим для дополнительных отчетов и обработок РазрешениеНаИспользованиеПривилегированногоРежима

Так сложилось на проекте, что все новые отчеты и обработки нужно было выносить в дополнительные отчеты и обработки.

В одном из отчетов потребовалось использовать безопасное хранилище данных, кто использовал, тот поймет. Вот пример вызова данного метода:

УстановитьПривилегированныйРежим(Истина);
Настройки = ОбщегоНазначения.ПрочитатьДанныеИзБезопасногоХранилища(База, "Логин, Пароль");
УстановитьПривилегированныйРежим(Ложь);   

Все выходила следующая ошибка:

Ошибка при вызове метода контекста (Выполнить)

по причине:
Недостаточно прав для работы с таблицей "РегистрСведений.БезопасноеХранилищеДанных"

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

Ситуация осложнялась тем, что НИ платформа НИ БСП не сигнализирует о некорректно установленных настройках при использовании свойства "РазрешениеНаИспользованиеПривилегированногоРежима".

Проблема была в том, что некорректно была установлена используемая версия БСП в процедуре СведенияОВнешнейОбработке()

Прошу обратить внимание на используемую версию 2.1.1.1:

ПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке("2.1.1.1");

Если посмотреть на описание метода на сайте its, то можно увидеть, что метод поддерживается с БСП версии 2.3.

После установки версии 2.3 и более, проблема исчезает.

Проконтролировать, что у вас обработка открывается с отключенным режимом безопасности, можно в журнале регистрации:

Пример работающего кода:

Функция СведенияОВнешнейОбработке() Экспорт

	ПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке("3.1.7.382");
	
	ПараметрыРегистрации.Вставить("Вид", ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиДополнительнаяОбработка());
	ПараметрыРегистрации.Вставить("Версия", "1.00");
	ПараметрыРегистрации.Вставить("Наименование", Метаданные().Синоним);
	ПараметрыРегистрации.Вставить("Информация", "Выполняет регистрацию документов");
	
	Команда = ПараметрыРегистрации.Команды.Добавить();
	Команда.Использование = ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыОткрытиеФормы();
	Команда.Представление = "Обработка по автоматическому созданию документов";
	Команда.Идентификатор = "АвтоРегистрацияДокументов";
			
    Разрешение = РаботаВБезопасномРежиме.РазрешениеНаИспользованиеПривилегированногоРежима("Требуется для подключения к внешнему источнику данных");
    ПараметрыРегистрации.Разрешения.Добавить(Разрешение);
	
	Возврат ПараметрыРегистрации;
	
КонецФункции

Да прибудет с вами сила и терпение!

БСП Отключить безопасный режим дополнительные отчеты обработки РазрешениеНаИспользованиеПривилегированногоРежима УстановитьПривилегированныйРежим

См. также

БСП (Библиотека стандартных подсистем) Программист Платные (руб)

Синтакс-помощник БСП - cправочник по библиотекам стандартных подсистем и электронных документов. В состав справочника входит описание экспортных процедур и функций, размещенных в областях кода ПрограммныйИнтерфейс БСП и БЭД.

1800 руб.

21.11.2024    4299    17    15    

20

БСП (Библиотека стандартных подсистем) Программист Платформа 1С v8.3 Бесплатно (free)

Добавим метки в новый документ средствами БСП.

10.02.2025    4059    John_d    22    

47

БСП (Библиотека стандартных подсистем) Программист Платформа 1С v8.3 Бесплатно (free)

Расскажу, как использовать полезный функционал - инструментарий разработчика «1С:Библиотека стандартных подсистем» (БСП) в своих объектах метаданных. Статья будет полезна как шпаргалка при написании собственных объектов метаданных.

27.12.2024    4474    PROSTO-1C    16    

48

БСП (Библиотека стандартных подсистем) Программист Бесплатно (free)

Синтакс-помощник БСП - справочник по Библиотеке Стандартных Подсистем, профессиональный инструмент разработчика с интуитивно понятным интерфейсом. Читайте в статье как использовать все возможности справочника и сделать работу с БСП более комфортной и эффективной.

11.12.2024    4373    gorenski    0    

8

БСП (Библиотека стандартных подсистем) Программист Платформа 1С v8.3 Бесплатно (free)

Некоторые нюансы, если вы захотите создавать свои расширения. Доработка отчета "Связанные документы" для отражения документов расширения. Печатные формы с шаблоном Word.

20.11.2024    3789    milkers    3    

13

БСП (Библиотека стандартных подсистем) Программист Платформа 1С v8.3 Бесплатно (free)

В статье описан алгоритм для включения документа или справочника в систему БСП. Будет полезно программистам 1С, начинающим работать с БСП.

24.10.2024    2046    PROSTO-1C    0    

19

БСП (Библиотека стандартных подсистем) Работа с интерфейсом Программист Платформа 1С v8.3 Бесплатно (free)

В материале описан универсальный механизм работы с добавленными элементами на общую форму «ФормаОтчета». Думаю, облегчит работу многим разработчикам.

08.10.2024    1552    PROSTO-1C    4    

14
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. artbear 1566 15.10.23 19:35 Сейчас в теме
(0) Интересно.
Есть вопрос:
Прошу обратить внимание на используемую версию 2.1.1.1:

ПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке("2.1.1.1");
Если посмотреть на описание метода на сайте its, то можно увидеть, что метод поддерживается с БСП версии 2.3.

Где именно на ИТС увидели, что этот метод поддерживается с версии 2.3?
2. SpecRam 39 16.10.23 09:47 Сейчас в теме
(1) Можно увидеть в приложенном скриншоте публикации
3. cheshirshik 74 16.10.23 10:08 Сейчас в теме
Такая бредовая карнитка. Инженер спровоцировал короткое замыкание?
4. maksa2005 556 16.10.23 10:08 Сейчас в теме
как раз не давно была проблема(
Ростислав; +1 Ответить
5. Serg O. 297 16.10.23 10:09 Сейчас в теме
Версию не нужно писать "фиксированно", она УЖЕ есть в конфигурации на БСП
//см. общ.модуль ОбновлениеИнформационнойБазыБСП >>> ПриДобавленииПодсистемы()

ВерсияБСП = СтандартныеПодсистемыСервер.ВерсияБиблиотеки(); // 3.1. х . xxx

ПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке(ВерсияБСП);
Sv_444; user1481466; cheburashka; kser87; +4 Ответить
7. MrEvilSkotch 16.10.23 11:14 Сейчас в теме
(5) Версия указывается как поддерживаемая обработкой. Если ставить постоянно текущую, то нельзя будет соотнести с той версией БСП, которая поддерживается, и найти ошибку в случае несовместимости.
Xershi; unichkin; ubnkfl; +3 Ответить
8. Serg O. 297 16.10.23 13:32 Сейчас в теме
(7) я уже только 3.1.3 или 3.1.5 версии БСП "вижу", так что 2.1 или 2.3 уже не актуально.
наверное "пора уже" переходить на 3.1.x чему эта статья как раз является лучшим подтверждением.
6. kser87 2469 16.10.23 10:54 Сейчас в теме
Сталкивался, буду знать теперь
9. qwinter 684 16.10.23 13:51 Сейчас в теме
И это в горячем. Что дальше? Как получить текущего пользователя?
JohnyDeath; starik-2005; Krotov_Valery; +3 Ответить
11. starik-2005 3144 17.10.23 11:43 Сейчас в теме
(9)
Как получить текущего пользователя?
ТекущийЮзер = Пользователи.ТекущийПользователь();
На здоровье!
10. artbear 1566 16.10.23 20:09 Сейчас в теме
(0) Все-таки мне ваше описание проблемы показалось подозрительным, я проверил ваше решение и поменял оценку плюс на минус, т.к. не удалось подтвердить такое поведение.

скопировал ваш код про СведенияОВнешнейОбработке с 2.1.1.1 в модуле объект
добавил в форму команду на клиенте + код на сервере
&НаСервереБезКонтекста
Процедура ЧтениеИзБезопасногоХранилищаНаСервере(Знач Ссылка)
	Сообщить("БезопасныйРежим() " + БезопасныйРежим());
	
	УстановитьПривилегированныйРежим(Истина);
	Настройки = ОбщегоНазначения.ПрочитатьДанныеИзБезопасногоХранилища(Ссылка, "Логин, Пароль");
	УстановитьПривилегированныйРежим(Ложь);
КонецПроцедуры
Показать

добавил файл в ДопОтчетыОБработки
перезапустил 1С
захожу в Спр.ДопОтчетыОбработки
нажимаю Выполнить, нажимаю кнопку Команды

и не получаю сообщение об ошибке, хотя обработка сообщает, что она запущена в безопасном режиме!!

за это и минусую (
12. SpecRam 39 17.10.23 20:06 Сейчас в теме
(10) Благодарю за интерес к текущей публикации.
Вы скорее всего проверяете под пользователем с полными правами.
Рекомендую проверить на пользователе с ограниченными правами, демо конфигурации с подсистемой БСП.

Прошу обратить внимание, когда вы запускаете обработку с версией ниже 2.3, то в журнале регистрации будет запись, что обработка запущена в безопасном режиме: "Да".
Если укажете, версию выше, тогда обработка будет запущена с отключенным режимом безопасности. Прикрепляю скриншот.
Обновил публикацию, со скриншотом из журнала регистрации.
Прикрепленные файлы:
13. artbear 1566 18.10.23 16:53 Сейчас в теме
(12) Проверю.

Советую эту информацию добавить в свою публикации, сейчас из описания все-таки непонятно, что именно работает неверно (
14. artbear 1566 18.10.23 17:26 Сейчас в теме
(12) проверил, вы правы, поведение неверное при указании 2.1.1.1

меняю минус на плюс )
axsebur; EvgeniyOlxovskiy; +2 Ответить
15. artbear 1566 18.10.23 17:28 Сейчас в теме
(0) Запишу тикет на новое правило БСЛ ЛС
16. Sv_444 06.12.23 05:21 Сейчас в теме
17. пользователь 14.01.24 19:04
Сообщение было скрыто модератором.
...
Оставьте свое сообщение