Ускорение обезличивания баз данных средствами PostgreSQL в 1С
| Заказчик | NDA. Крупный автомобильный концерн, эксплуатирующий множество типовых и самописных баз данных |
|---|---|
| Задача | Разработать инструмент обезличивания конфиденциальных данных в тестовых базах, работающий значительно быстрее штатного механизма платформы 1С |
| Результат | Создана обработка на базе СУБД PostgreSQL, которая кратно сократила время обезличивания и обеспечила надёжную защиту персональных данных в тестовых средах |
Ситуация
В Имплекс обратился один из крупных отечественных автопроизводителей. В повседневной деятельности концерн задействует значительное число информационных баз — как типовых конфигураций, так и систем собственной разработки. Сведения, которые хранятся в этих базах, относятся к категории конфиденциальных. Чтобы исключить их утечку при передаче баз разработчикам, компания была обязана делать данные обезличенными в тестовых копиях.
Для этой задачи применялась обработка из подсистемы «Защита персональных данных» платформы 1С:Предприятие 8, доступная в функциях для технического специалиста по внутренней ссылке e1cib/app/Обработка.СкрытиеКонфиденциальнойИнформации. Она справлялась с задачей, однако при работе с базами большого объёма процедура растягивалась на очень длительное время. Именно это и побудило заказчика обратиться с просьбой найти более быстрое решение.
Задача
Создать инструмент, существенно сокращающий продолжительность процедуры обезличивания данных в БД, сохранив при этом надёжную защиту конфиденциальных сведений.
Решение
Чтобы решить поставленную задачу, мы разработали инструмент специализированной обработки «Обезличивание ИБД» с помощью средств СУБД PostgreSQL. Работа с ней выстроена в чёткой последовательности шагов.
Этап 1. Внедрение подсистемы обезличивания
В конфигурацию БД, которую требовалось обезличить, интегрируется подсистема «Обезличивание». Это подготовительный шаг, открывающий доступ ко всем последующим инструментам и настройкам.
Этап 2. Создание отладочной копии и развёртывание на сервере
На основе целевой базы создаётся тестовая копия, которую затем разворачивают на сервере. Именно с ней и будет проводиться дальнейшее обезличивание, тогда как оригинальная база остаётся нетронутой.
Этап 3. Создание хранимой функции инструментами СУБД
Для отладочной копии БД на сервере с помощью инструментов PostgreSQL создаётся хранимая функция следующего вида:
CREATE FUNCTION execom(text)
RETURNS text
LANGUAGE 'plpgsql'
COST 100
VOLATILE PARALLEL UNSAFE
AS $BODY$
BEGIN
EXECUTE $1;
RETURN 'ok';
END;
$BODY$;
Эта функция служит исполнительным механизмом, через который передаются и выполняются команды обезличивания на уровне СУБД.
Этап 4. Настройка внешнего источника данных в основной конфигурации
В основной конфигурации настраивается внешний источник данных с именем «ОбезличиваемаяБаза». Для этого необходимо переподключить функцию public_execom.
В конструкторе она выбирается из общего списка функций:
После чего задаются параметры подключения:
Driver={PostgreSQL Unicode};Server=;Port=;Database=;STMT=utf8
Искомая функция public_execom находится в ветке public.
Этап 5. Настройка параметров обезличивания в тестовой базе
В тестовой базе, для которой выполняется процедура обезличивания, запускается обработка «Обезличивание ИБД». На вкладке «Настройки» специалист отмечает объекты, строковые реквизиты, табличные части и строковые реквизиты табличных частей, которые должны быть обезличены. Сформированный список сохраняется в файл кнопкой «Сохранить настройки» — для последующего использования.
Этап 6. Запуск обезличивания из основной базы
В основной базе также открывается обработка «Обезличивание ИБД». На вкладке «Обезличивание» через кнопку «Загрузить настройки» загружается ранее сохранённый список объектов и реквизитов. Затем из него выбираются те позиции, которые нужно обезличить в текущем сеансе, и нажимается кнопка «Обезличить».
После её нажатия запускается операция: строковые реквизиты выбранных объектов очищаются — рабочая информация затирается и заменяется обезличенными значениями. Результат хорошо виден на примерах обезличенных справочников, документов и регистров сведений.
Результат
Поставленная цель достигнута в полном объёме. Заказчик получил новый рабочий инструмент, который позволяет проводить обезличивание информационных баз данных значительно быстрее, чем прежде.
При этом уровень защиты конфиденциальных сведений не только сохранён, но и подкреплён более надёжным и производительным техническим решением.
под соглашением о неразглашении (NDA),
поэтому вы можете оставить заявку,
и мы расскажем чуть больше
Услуги
Внедрение и переходы
Внедряем конфигурации, исправляем ошибки, настраиваем обмены с внешними системами
Обслуживание и сопровождение 1С
Берем систему на сопровождение. Оказываем поддержку пользователям
Усиление команды 1С
Подключаем специалистов 1С на нужное количество часов. Вы управляете ими, как своими сотрудниками
Сопровождение 1С:ИТС
Комплексная поддержка пользователей программ "1С:Предприятие"
Разработка и сопровождение 1С
Оцениваем и выполняем задачи с техзаданием или без него