Ускорение обезличивания баз данных средствами 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С:Предприятие"
Разработка 1С
Сопровождение 1С
Битрикс разработчики