Blog

Noticias

Lanzamiento de Greenmask 0.1.7

Herramienta para volcado y ofuscación en PostgreSQL

Esta versión introduce un nuevo comando de Greenmask, mejoras, correcciones de errores y la actualización de la documentación.

Descripción general de Greenmask

Principales características

  • Multiplataformapuede compilarse y ejecutarse fácilmente en cualquier plataforma, gracias a su arquitectura basada en Go, que elimina las dependencias de plataformas.
  • Interactivo permite comprobar el resultado de la transformación y mostrar posibles problemas mediante el comando único validate
  • Comprobación de diferencias de esquema valida la base de datos actual con el volcado anterior almacenado y muestra las diferencias.
  • Seguridad de tipos de datos garantiza la integridad de los datos validándolos y utilizando el controlador de la base de datos para las operaciones de codificación y decodificación. Este enfoque garantiza la conservación de los formatos de datos.
  • Validación de transformaciones y mantenimiento sencillo durante el desarrollo de la ofuscación, Greenmask proporciona mensajes de advertencia de validación y una función de diferencias de transformación, lo cual permite supervisar y mantener las transformaciones de forma eficaz durante todo el ciclo de vida del software.
  • Herencia de transformación de tablas particionadas — define las configuraciones de transformación una única vez y las aplica a todas las particiones dentro de tablas particionadas, lo cual simplifica el proceso de ofuscación.
  • Sin estado — Greenmask funciona como un volcado lógico y no afecta al esquema existente de la base de datos.
  • Compatible con versiones anteriores — soporta perfectamente las mismas características y protocolos que las utilidades Vanilla existentes para PostgreSQL. Los volcados creados por Greenmask se pueden restaurar correctamente con la utilidad pg_restore.
  • Extensible — los usuarios tienen flexibilidad para aplicar transformaciones basadas en dominios en cualquier lenguaje de programación o utilizar plantillas predefinidas.
  • Declarativo — Greenmask permite definir configuraciones en un formato estructurado, fácilmente analizable y reconocible.
  • Integrable — Greenmask se integra perfectamente en sistemas CI/CD para automatizar la ofuscación y la restauración de bases de datos.
  • Ejecución en paralelo — aprovechando el volcado y la restauración en paralelo, se reduce considerablemente el tiempo necesario para obtener resultados.
  • Proporciona distintos tipos de almacenamiento — Greenmask ofrece diversas opciones de almacenamiento de datos locales y remotos, incluidos directorios y soluciones de almacenamiento tipo S3.
Greenmask es ideal para:
  • Tareas rutinarias de respaldo y restauración, garantizando integridad y disponibilidad de los datos.
  • Anonimización y enmascaramiento de datos para entornos de pruebas y análisis, protegiendo la información confidencial y manteniendo la utilidad de los datos.

Notas de la versión

versión 0.1.7
Nuevas características
  • Añadido el filtrado de restauración a través de los parámetros --table, --schema y --exclude-schema
  • El comando validate sin parámetros sólo valida el archivo de configuración
  • Se ha añadido el parámetro --schema, que permite realizar una diferencia de esquema entre el volcado anterior y el actual. Es útil cuando se quiere comprobar si se han producido cambios en el esquema tras la migración. Al controlarlo podemos excluir la fuga de datos tras la migración
  • El comando validate se divide en varias fases que pueden controlarse mediante parámetros
    • Validación de configuración
    • Validación de transformadores
    • Comprobación de violación de restricciones
    • Comprobación de diferencias de datos
    • Comprobación de diferencias de esquema
Mejoras
  • Transformador Hash mejorado
    • Se ha añadido un parámetro salt que puede configurarse o mediante GREENMASK_GLOBAL_SALT
    • Añadido soporte para funciones sha3 en diferentes modos (sha3-224, sha3-256, sha3-384, sha3-512).
  • Lógica del transformador Cmd refactorizada
    • API Json: Ahora permite utilizar nombres de columnas en lugar de índices de columnas en formato JSON
    • API Csv: Ahora puede utilizar el orden de las columnas de la configuración mediante la reasignación de columnas.
  • El comando validate se ha reescrito casi desde cero.
    • Nueva opción --transformed-only – sólo muestra las columnas transformadas con una clave primaria (si existe). Esto permite reducir los datos de salida y hacerlos más legibles
    • Implementado formato json para salida
    • Se ha añadido el parámetro --table-format, responsable de la orientación vertical y horizontal de la tabla. Funciona únicamente cuando se utiliza --format=text
    • Se ha añadido el parámetro --warnings; si es especificado, no sólo se mostrarán las advertencias críticas, sino también las de menor gravedad.
Correcciones
  • Corregida la opción --use-list – ahora se aplica a las entradas según el orden en el archivo de lista.
  • Corregido el comportamiento de la opción --use-list junto con la opción --list-format (json o text). Ahora genera un archivo de lista temporal en formato texto para proporcionarlo a la llamada de pg_restore
  • Documentación actualizada según los últimos cambios
versiones 0.1.2 – 0.1.6
  • Corregido el incremento incontrolado del buffer en el comando restore
  • El transformador Hash ha sido completamente remasterizado y ahora cuenta con el parámetro function que permite elegir entre varias opciones de algoritmos hash y el parámetro max_length para truncar la cola del hash.
  • Información sobre los transformadores dividida entre los comandos de la CLI list-transformers y show-transformer, lo cual permite obtener resultados más comprensibles y útiles para ambos comandos. 
  • Añadida severidad de error para el validador de parámetros Cmd.
  • Importante modificación de la estructura y el contenido de la documentación.
  • Corregido el enriquecimiento de metadatos para las advertencias de validación causadas por RawValueValidator.
  • Corregido un error de tipeo en el valor de credit_card para el parámetro type del transformador Masking.
  • Corregidas las variables de entorno de Greenmask Playground y el comando cleanup
  • Corregido el código de salida en caso de error de los comandos list-dump, list-transformers, y restore
  • Corregidos los campos de comportamiento de los parámetros de conexión a la base de datos
  • Corregido el transformador Json: ahora analiza correctamente el campo de operaciones
  • Se ha corregido un error por el que las líneas COPY sin procesar se interpretaban incorrectamente.
  • Corregido el comportamiento del parámetro --version

Enlaces útiles

Changelog de greenmask.io
Explorar la documentación detallada 
Acceso a la última versión en GitHub
Contáctennos en el Correo Electrónico de Soporte

Haz clic aquí para leer la noticia original en inglés en la página web oficial de PostgreSQL.