Состоялся релиз nxs-data-anonymizer 1.0.0 — инструмента для анонимизации дампа баз данных PostgreSQL и MySQL. Инструмент написан на языке Go и выпускается под лицензией Apache License 2.0...Подробнее: https://www.opennet.me/opennews/art.shtml?num=59486
а зачем выкладывать дамп с персональными данными? это незаконно во многих юрисдикциях. Вы доверите какой-то проге свою юридическую безопасность?
Для внутреней разработки и тестовых развертываний. Чувствительные данные надо «замазывать».
Чувствительные данные не надо хранить.
Уж сколько раз и крупные корпорации и банки и правительственные конторы утекали.
Но нет, надо же чтобы были подписки (а значит и номера карт), обращение по имени (а значит ФИО), геотаргетинг (а значит адрес) и прочее "для вашего удобства" (на самом деле нет, чтобы можно было использовать базу для маркетинга).В большинстве случаев ничего из этого не нужно.
Покупки с адресом можно делать и анонимно, достаточно показать пользователю id заказа. Соотнести любую информацию с ним можно по адресу или по номеру кредитной карты (которая сама по себе гораздо менее чувствительна).Но конечно бесконечное количество глупых законов и маркетолухов не дадут этого сделать.
>Чувствительные данные не надо хранить.Ты опоздал родиться. Века на два как минимум :)
И как вы без хранения данных предлагаете привязать юзера к его мед.карте, к примеру?-)))
Для какой-то обработки они тебе никогда не нужны. Все равно внутри оперируешь просто id-шниками.
Если, например, надо ФИО написать в карточке, то тут надо хранить пары id-фио в отдельной базе/сервисе (более строго защищенных) или вообще отдать на хранение провайдеру идентификации (google, vk id и т.д., через что он у вас там логинится) и ходить за ними когда надо. Для этого собственно oauth со скоупами и придумали.
> на хранение провайдеру идентификации (googleкоторый будет ими торговать, ровно как сейчас это и происходит, вот вырисовывается выбор, хранить номер карты в базе вордпреса местной областной больнички, где админчик получает 45к наруки или у дяди билли среди миллионов таких же как ты, а уж дядя билли и нейросеть купит, и обучит, и найдет способ тебе чтото продать, а если не сам, то третьим лицам продаст..
Собственно с этой точки точки зрения разницы нет, сольют базу злодеи через дыру, или купят у барыги, вопрос в качестве материала, уж не будет админчик за 45к ее валидировать и поддерживать в актуальном состоянии годами, а барыга будет.
Вопрос только в том, что Дядям, очень не хочется иметь дел с админчиками, поэтому и пишутся законы о защите, которые вынуждают и тебя и админчика идти к барыгам, которые эту инфу по первому челчку запакуют и отправят этим Дядям.
Вот лично я, предпочел бы админчика, и вордпресс, куда я могу зайти и поменять себе и номер карты и фамилию, и телефон, и пусть звонят туда мошенники и пытаются там выудить денег.
а вот с барыгами такой фокус уже не проканает
В этом плане мне больше нравится если бы вход везде был через госуслуги. Государство все равно о тебе и так все знает. Ну по крайней мере для легальных сайтов почему бы и нет. Конечно на википедию таким образом уже было бы не зайти ))Ну либо вариант хранить самому. Наверно для каких-то чувствительных вещей вида медицины было бы неплохо делать так. Главное чтобы этим занимался эксперт а не доморощенный админ. Везде все утекает, но вопрос скорее чтобы цена не была уж слишком дешевой.
> В этом плане мне больше нравится если бы вход везде был через
> госуслуги. Государство все равно о тебе и так все знает. Ну
> по крайней мере для легальных сайтов почему бы и нет. Конечно
> на википедию таким образом уже было бы не зайти ))
> Ну либо вариант хранить самому. Наверно для каких-то чувствительных вещей вида медицины
> было бы неплохо делать так. Главное чтобы этим занимался эксперт а
> не доморощенный админ. Везде все утекает, но вопрос скорее чтобы цена
> не была уж слишком дешевой.Для каких-то вещей типа медицины уже давно через госулуги доступ, а само ПО в защищенных ЦОД. Хранить данные самому крайне дорого и особого смысла в этом нет.
> Для какой-то обработки они тебе никогда не нужны. Все равно внутри оперируешь
> просто id-шниками.
> Если, например, надо ФИО написать в карточке, то тут надо хранить пары
> id-фио в отдельной базе/сервисе (более строго защищенных) или вообще отдать на
> хранение провайдеру идентификации (google, vk id и т.д., через что он
> у вас там логинится) и ходить за ними когда надо. Для
> этого собственно oauth со скоупами и придумали.Через гугл, ПДн, ай молодца. 152-ФЗ стоит почитать для разнообразия.
> И как вы без хранения данных предлагаете привязать юзера к его мед.карте,
> к примеру?-)))Примерно также как делали это столетие или примерно также как это делает биткойн - по корешку и обложки медкарты (айдишнику), которая вообще говоря может быть и без фамилии и имени (просто такой вот хэш приняли в медучреждении).
На самом деле, эта штука бесполезна. Я рекомендую в каждом конкретном случае делать это самостоятельно, хоть на Баше, потому что никто, кроме вас не знает вашу БД. Думаю, этот прожект и вырос из такой самоделки, но для других он бесполезен.
Понятное дело, что никто лучше вас самих вашу БД не знает. Скажу больше - если вы не знаете свою БД, то и пользоваться этим инструментом вы не сможете, так как он магию за вас не сделает и не определит самостоятельно где лежат чувствительные данные для вашего бизнеса и как их нужно изменить. Его задача заключается в том, чтобы максимально упростить работу по изменению этих самых данных, чтоб, как вы сказали, не сидеть и не сочинять скрипты на баше, заниматься их отладкой и поддержкой, а просто написать конфиг, где даже знания SQL не нужны.
> том, чтобы максимально упростить работу по изменению этих самых данных, чтоб,
> как вы сказали, не сидеть и не сочинять скрипты на баше,
> заниматься их отладкой и поддержкой, а просто написать конфиг, где даже
> знания SQL не нужны.Ага, учить новый язык шаблоны и прочую святотень вместо уже хорошо известного SQL.
1. Берётся ежедневный бэкап (дамп).
2. Импортируется на отдельном сервере.
3. На этом сервере прогоняется запросы на чистку/изменение данных.
4. Делается дамп, раздаётся разработчикам или/и импортируется в тестовое окружение.Пункты 3 и 4 могут быть посложнее, например разработчикам удобнее дамп поменьше.
Это всё заодно и является проверкой адекватности бэкапов )Разумеется, легко автоматизируется.
Я конечно и сам так делал.
Но вообще говоря есть разные сценарии и требования.
И если где-то достаточно через awk заменить все даты рождения 3 января 2009 года, то где-то для тестирования и верификации нужны разные даты. А еще есть имена, адреса и т.д..
Но в идеале конечно лучше просто не работать ни с какими чувствительными данными. Нет данных - нет проблем.
продолжу. нет проблем - нет продаж - нет денег.
> продолжу. нет проблем - нет продаж - нет денег."А я в принципе и так лежу и ничего не делаю"
Да какой авк? Я же написал — работать с базой данных, скл.
> Да какой авк? Я же написал — работать с базой данных, скл.А следующий этап этап зашаблонить этот скл и оформить в виде плагина и вот он, такой же инструмент для анонимизации, только заточенный на одну компанию и самим дебажить.
Анонимизация на языке GO! :)
google с нами :)
Единственная связь с Google там - прокси, задаваемый через переменную окружения GOPROXY (и через неё же и отключаемый). Но это свойство вашей установки Go, а не конкретного софта.
Там же вроде ещё и телеметрия в утилитах, или она не по-умолчанию?
> для анонимизации дампа баз данныхЭто как ? Типо, по конкретному адресу и с конкретными кредами подключаюсь к хз кому ради хз чего ?
Тебе это не надо. Это для компУтерЩикаФФФ" :)
Для компУтерЩикаФФФ" :) - вот вам Ыкзампель:
export PGPASSWORD=password; pg_dump -U postgres prod | /path/to/nxs-data-anonymizer -t pgsql -c /path/to/nxs-data-anonymizer.conf | psql -U postgres devСам это юзать не буду, у нас спецтулза для этого закуплена за тЫЩЩи нФФти :)))
> Сам это юзать не буду, у нас спецтулза для этого закуплена за тЫЩЩи нФФти :)))awk ?
sed, небось, дешевле бы стоил...
Оxocпадя, eгэшники ввыросли.$ mysqldump bazadata | gpg -c > ~/bazadata.gpg
> Возможность удаления таблиц и строк из анонимизированного дампа;Ну давайте, расскажите как удалить "известную строку" и неизвестного дампа? (без временной деанонимизации)
> Оxocпадя, eгэшники ввыросли.
> $ mysqldump bazadata | gpg -c > ~/bazadata.gpgИ что вы этим хотели сказать? Что умеете хранить данные БД в шифрованном виде? Так здесь речь как бы не про это. Как мне это должно помочь залить на dev-стенд БД без чувствительных данных с прода?
> Ну давайте, расскажите как удалить "известную строку" и неизвестного дампа? (без временной деанонимизации)
Вы хорошо прочитали описание тулзы и что здесь подразумевается под словом анонимизация? На всякий случай оставлю это тут - тулза затирает именно данные, а не саму структуру БД. Поэтому что вас смущает в исходном утверждении непонятно от слова совсем.
> | gpg -cдобавьте пару человеко-дней на возню с pinentry, gpg-agent, несовместимость версий gpg 1 и 2 и т.д.
> добавьте пару человеко-дней на возню с pinentry, gpg-agent, несовместимость версий gpg
> 1 и 2 и т.д.зачем, тут же не сказано что он это еще и расшифровывать собирается. mission accomplished, чо.