В наши дни, когда информационные системы стали неотъемлемой частью работы большинства компаний, а объемы обрабатываемых данных постоянно растут, превращая информацию в один из самых ценных ресурсов современного бизнеса, вопросы защиты и сохранности данных становятся все более актуальными. Каждый день происходят массовые утечки данных и хакерские атаки. Компании все чаще привлекают к разработке своих информационных систем внешних подрядчиков, что влечет за собой необходимость предоставления им доступа к чувствительной информации. При этом статистика говорит о том, что каждый пятый случай утечки данных связан с взломом инфраструктуры подрядчика, имеющего доступ к данным заказчика. В результате перед бизнесом встает целый список противоречивых вопросов: как обеспечить доступ к данным для работы с ними, включая внешних подрядчиков, и в то же время защитить свои данные от утечки? Кроме естественного желания компаний защитить свои данные, нужно помнить и о том, что в России тема защиты данных получает особую значимость в связи с законом о персональных данных и растущей угрозой кибератак.
Обычные методы разделения доступа не всегда достаточны. В этом контексте маскирование данных выступает как один из наиболее эффективных методов защиты важной информации от несанкционированного доступа. Этот подход позволяет обеспечить необходимый уровень доступа к информации, при этом минимизируя риск её утечки.
Маскирование данных помогает снизить риски, связанные с важной информацией, посредством её замены на обезличенную версию. Этот метод представляет собой процесс, в ходе которого реальные данные заменяются искусственными, но при этом сохраняются все ключевые характеристики исходных данных, что позволяет в итоге использовать такие данные для тестирования или разработки, не рискуя безопасностью и конфиденциальностью. Подобные решения уже активно используются в различных отраслях: банками, промышленными организациями, ритейл-компаниями, колл-центрами, провайдерами и, в целом, любыми компаниями, которым необходимо обеспечивать безопасность чувствительных данных.
Существуют различные методы маскирования данных.
Статическое маскирование данных – это подход, который позволяет при создании копии базы данных настроить специальные правила копирования части информации. Эти правила работают таким образом, что исходная информация заменяется на информацию, которая по своей структуре и характеру очень похожа на оригинал, но при этом не соответствует действительности. Например, вы можете заменить все номера телефонов клиентов на случайные наборы цифр, которые по структуре очень похожи на телефонные номера, но при этом не являются реальными номерами. Одно из главных преимуществ этого подхода заключается в том, что целостность базы данных не нарушается. Это означает, что вы можете передать такую копию базы данных даже разработчикам на аутсорсинге, не опасаясь утечек ценных данных.
Динамическое маскирование позволяет скрывать часть информации на лету, заменяя исходные данные в ответе приложения или базы данных на запрос пользователя, не изменяя при этом информацию на носителе данных. Создав определенные правила, возможно предоставить полную информацию только тем, кому она необходима по служебной необходимости, не внося изменений ни в базу данных, ни в логику работы информационной системы. Например, при работе в CRM с карточкой клиента, содержащей его ФИО, номер телефона, адрес, место работы и сумму остатка на счете, полная информация должна быть доступна только руководителю отдела, а другим сотрудникам доступны только ФИО и телефон клиента. Сам принцип маскирования данных, на лету, не предполагает внесения изменений в хранимые данные и предусматривает только маскирование отображаемой информации пользователю.
Варианты изменения данных в обоих методах могут быть разными. Например:
При выборе инструмента для маскирования данных следует учитывать ряд ключевых критериев, которые обеспечивают эффективность и надежность этого процесса. Эффективность маскирования данных во многом зависит от скорости обработки информации. Поэтому советую обращать внимание на возможность масштабирования решения по ресурсам. Например, использование микросервисной архитектуры решения позволит гибко и просто управлять пропускной способностью.
Инструмент должен предоставлять возможность настройки различных параметров для методов маскирования. Это позволяет сохранять консистентность данных (например, чтобы исходные значения заменялись всегда на одно и то же, например, «Иван» на «Петр»), заменять значения только на уникальные, игнорировать пустые значения, указывать диапазон маскирования и т.д. В случае нетипичных ситуаций пользователь должен иметь возможность создать собственный метод маскирования прямо из интерфейса инструмента.
Сегодня на рынке можно найти различные инструменты для маскирования данных, включая бесплатные Open Source решения с готовыми скриптами. Пример одного из них – это DataMasking на GitHub. Однако нужно чётко понимать, что с ростом объёма данных будет увеличиваться и сложность поддержки таких решений. Существуют также готовые решения от известных производителей, протестированные и не требующие высокой квалификации специалистов заказчика для обслуживания баз данных. Среди таких решений:
Также производители российских СУБД, понимая потребности рынка, выпускают расширения к своим системам управления базами данных. Среди них:
Обычные методы разделения доступа не всегда достаточны. В этом контексте маскирование данных выступает как один из наиболее эффективных методов защиты важной информации от несанкционированного доступа. Этот подход позволяет обеспечить необходимый уровень доступа к информации, при этом минимизируя риск её утечки.
Маскирование данных помогает снизить риски, связанные с важной информацией, посредством её замены на обезличенную версию. Этот метод представляет собой процесс, в ходе которого реальные данные заменяются искусственными, но при этом сохраняются все ключевые характеристики исходных данных, что позволяет в итоге использовать такие данные для тестирования или разработки, не рискуя безопасностью и конфиденциальностью. Подобные решения уже активно используются в различных отраслях: банками, промышленными организациями, ритейл-компаниями, колл-центрами, провайдерами и, в целом, любыми компаниями, которым необходимо обеспечивать безопасность чувствительных данных.
Существуют различные методы маскирования данных.
Статическое маскирование данных – это подход, который позволяет при создании копии базы данных настроить специальные правила копирования части информации. Эти правила работают таким образом, что исходная информация заменяется на информацию, которая по своей структуре и характеру очень похожа на оригинал, но при этом не соответствует действительности. Например, вы можете заменить все номера телефонов клиентов на случайные наборы цифр, которые по структуре очень похожи на телефонные номера, но при этом не являются реальными номерами. Одно из главных преимуществ этого подхода заключается в том, что целостность базы данных не нарушается. Это означает, что вы можете передать такую копию базы данных даже разработчикам на аутсорсинге, не опасаясь утечек ценных данных.
Динамическое маскирование позволяет скрывать часть информации на лету, заменяя исходные данные в ответе приложения или базы данных на запрос пользователя, не изменяя при этом информацию на носителе данных. Создав определенные правила, возможно предоставить полную информацию только тем, кому она необходима по служебной необходимости, не внося изменений ни в базу данных, ни в логику работы информационной системы. Например, при работе в CRM с карточкой клиента, содержащей его ФИО, номер телефона, адрес, место работы и сумму остатка на счете, полная информация должна быть доступна только руководителю отдела, а другим сотрудникам доступны только ФИО и телефон клиента. Сам принцип маскирования данных, на лету, не предполагает внесения изменений в хранимые данные и предусматривает только маскирование отображаемой информации пользователю.
Варианты изменения данных в обоих методах могут быть разными. Например:
- Удаление - просто удаляет данные.
- Статическая замена последовательно заменяет данные одним и тем же значением. Например: замена всех значений столбца типа text на значение «КОНФИДЕНЦИАЛЬНО».
- Отклонение «сдвигает» даты и числовые значения. Например, после применения отклонения +/- 10% к столбцу зарплаты набор данных не потеряет смысл.
- Обобщение снижает точность данных, заменяя их диапазоном значений. Вместо «Бобу 28 лет» можно сказать «Бобу от 20 до 30 лет». Этот метод полезен для аналитики, так как данные остаются верными.
- Перестановка перемешивает значения в рамках столбца. Исходные данные могут быть восстановлены, если алгоритм перестановки будет расшифрован.
- Рандомизация заменяет конфиденциальные данные случайными, но правдоподобными значениями. Цель состоит в том, чтобы исключить возможность какой-либо идентификации по записи данных, оставляя её пригодной для тестирования, анализа и обработки данных.
- Частичное скрытие аналогично статической подстановке, но оставляет часть данных нетронутыми. Например: номер кредитной карты может быть заменён на «40XX XXXX XXXX XX96».
- Пользовательские правила предназначены для изменения данных в соответствии с особыми требованиями (например, заменить одновременно почтовый индекс и название города случайными значениями, чтобы они оставались согласованными).
- Псевдонимизация_защищает_ персональные данные, скрывая их с помощью дополнительной информации.
При выборе инструмента для маскирования данных следует учитывать ряд ключевых критериев, которые обеспечивают эффективность и надежность этого процесса. Эффективность маскирования данных во многом зависит от скорости обработки информации. Поэтому советую обращать внимание на возможность масштабирования решения по ресурсам. Например, использование микросервисной архитектуры решения позволит гибко и просто управлять пропускной способностью.
Инструмент должен предоставлять возможность настройки различных параметров для методов маскирования. Это позволяет сохранять консистентность данных (например, чтобы исходные значения заменялись всегда на одно и то же, например, «Иван» на «Петр»), заменять значения только на уникальные, игнорировать пустые значения, указывать диапазон маскирования и т.д. В случае нетипичных ситуаций пользователь должен иметь возможность создать собственный метод маскирования прямо из интерфейса инструмента.
Сегодня на рынке можно найти различные инструменты для маскирования данных, включая бесплатные Open Source решения с готовыми скриптами. Пример одного из них – это DataMasking на GitHub. Однако нужно чётко понимать, что с ростом объёма данных будет увеличиваться и сложность поддержки таких решений. Существуют также готовые решения от известных производителей, протестированные и не требующие высокой квалификации специалистов заказчика для обслуживания баз данных. Среди таких решений:
Также производители российских СУБД, понимая потребности рынка, выпускают расширения к своим системам управления базами данных. Среди них:
- Расширение pgpro_anonymizer от PostgresPro, входящее в состав Enterprise лицензии, доступно на сайте PostgresPro.
- Расширение pg_anon от Группы Astra, входящее в состав лицензий СУБД Tantor, доступно на сайте Tantor Labs.
Маскирование баз данных
В наши дни, когда информационные системы стали неотъемлемой частью работы большинства компаний, а объемы обрабатываемых данных постоянно растут, превращая информацию в один из самых ценных ресурсов...
habr.com