Имя: Пароль:
1C
1С v8
v8: Бухгалтерия 2.0, УниверсальныйОбменДаннымиXML, ПроверитьНаличиеПравДоступа()
0 Dmumaju
 
06.12.11
10:21
Тему создаю просто в качестве возмущения ;)
Смысл таков - в свежих релизах Бухгалтерии 2.0 в процедуре ВыполнитьЗагрузку() появился вызов новой процедуры ПроверитьНаличиеПравДоступа();
Выглядит сие чудо так:
_______________________________________
Процедура ПроверитьНаличиеПравДоступа()
   
   #Если Клиент Тогда
       Режим = Ложь;
   #Иначе
       Режим = ПривилегированныйРежим();
   #КонецЕсли
   Если Не Режим
       И РольСуществует("ПолныеПрава")
       И Не РольДоступна("ПолныеПрава") Тогда
       ВызватьИсключение НСтр("ru='Обмен данными может быть выполнен только в привилегированном режиме
           |или от имени пользователя с полными правами.'");
   КонецЕсли;
   
КонецПроцедуры
_______________________________________

Согласно описанию процедуры ПривилегированныйРежим() в режиме клиент-сервер при выполнении на клиенте эта красота (ПривилегированныйРежим()) работать не будет (и слава богу!).
В итоге выполнить обмен данными может только пользователь с ролью "ПолныеПрава".
И что? У меня согласно внутренней политики все "простые" пользователи такой ролью не обладают в целях безопасности. Я конечно понимаю, что в целях подстраховки при обмене данными проще выполнять его в привилегированном режиме, чем предусмотреть возможность отката в исключительных ситуациях, но надо же предоставлять пользователям компромиссные решения, а не такую "поделку"...
Что - никто не задумывался, что универсальный обмен данными в том числе используется в Бухгалтерии при загрузке проводок из ЗУП?
1 Andr10K
 
30.12.11
14:53
Что в итоге делать? Давать всем полные права?
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.