Byl vydán nxs-data-anonymizer 1.4.0 — nástroj pro anonymizaci dumpů databází PostgreSQL a MySQL/MariaDB/Percona. Utilita podporuje anonymizaci dat na základě šablon a funkcí knihovny Sprig. Mezi jiným lze pro vyplnění použít hodnoty z jiných sloupců pro stejný řádek. Je povoleno používat nástroj přes neinovované kanály (pipe) v příkazovém řádku a přesměrovat dump z výchozí databáze přímo do cílové databáze s potřebnými transformacemi. Nástroj je napsán v jazyce Go a je vydán pod licencí Apache License 2.0.
Méně než rok po prvním vydání verze 1.0.0 se v nástroji objevily následující možnosti:
- Přidána funkce filtrů pro práci s hodnotami null.
- Realizována příkaz -l/—log-format, která umožňuje vybrat formát logování (json nebo plain).
- Přidána indikace procesu anonymizace — v určených intervalech jsou zobrazena data o pokroku probíhající operace.
- Ve verzi 1.4 se objevila možnost nastavovat hodnoty polí pomocí externích příkazů, přidáním do hodnoty sloupce „type: command“. Například: filters: some_table_name: columns: some_column_name: type: command value: /path/to/command/or/script.sh
Pokud je pro sloupec uvedeno „type: command“, potom je hodnota pole value chápána jako cestu k souboru k příkazu, který bude spuštěn pokaždé pro toto pole. Během vykonávání příkazu budou k dispozici další proměnné prostředí:
- ENVVARTABLE={TABLE_NAME}: obsahuje název filtrované tabulky
- ENVVARCOLUMN_{COLUMN_NAME}={COLUMN_VALUE}: obsahuje všechny sloupce a jejich hodnoty (před nahrazením) pro aktuálně filtrovaný řádek. Stdout příkazu je považován za novou hodnotu filtrovaného pole.
Zdroj: opennet.ru
