El script de Lua descubre datos sensibles en archivos JSON
Cuando se trabaja con la función de Descubrimiento de Datos, DataSunrise le permite usar una variedad de filtros de búsqueda predefinidos para diversos tipos de datos sensibles. Pero ¿hay alguna forma de buscar datos únicos? Sí, para llevar a cabo esta tarea puede usar Lua. El uso de scripts de Lua para el descubrimiento de datos permite buscar literalmente cualquier valor de tipo texto no cubierto por las plantillas existentes.
Este artículo describe cómo puede usar Lua para localizar las columnas de la base de datos de interés en archivos JSON. Se utiliza un script dedicado para hacer esto, por lo que puede basar su propia búsqueda en el algoritmo descrito a continuación. Tenga en cuenta que esto se puede hacer no solo con JSON, sino con cualquier tipo de archivo; solo necesita crear un script de Lua apropiado.
Puede copiar el script usado en este artículo aquí:
-- Especifique los valores que desea descubrir en la lista sensitive_from_json -- e.g. {"data","id","name"} sensitive_from_json = {"id", "data"} -- valStr contendrá JSON como texto local valStr = tostring(columnValue) local valStrLen = string.len(valStr) -- Función para obtener la longitud de una tabla local function tablelength(T) local count = 0 for _ in pairs(T) do count = count + 1 end return count end -- Obtener la cantidad de elementos en la lista sensitive_from_json local count = tablelength(sensitive_from_json) -- Identificar si la columna contiene datos formateados como JSON if string.sub(valStr, 1, 1) == '{' and string.sub(valStr, valStrLen, valStrLen) == '}' then for i = 1, count do -- Si JSON contiene al menos 1 valor deseado, devuelve 1, si no 0 if string.find(valStr, '"' .. tostring(sensitive_from_json[i]) .. '":') then return 1 end end return 0 else return 0 end
Primero, cree su script de Lua para buscar sus propios datos de interés. Tenga en cuenta que el script específico que creamos para este artículo, entre otras cosas, verifica si el archivo procesado está formateado como un archivo JSON. Para otros tipos de archivos, debe usar otros algoritmos de validación. Rellenamos los valores requeridos en el script. Para su conveniencia, dejamos algunos comentarios allí.
Entonces, nuestro script está listo para ser procesado y podemos ir a la Consola Web de DataSunrise.
Navegamos a Descubrimiento de Datos -> Tipos de Información y creamos un nuevo Tipo de Información.

Imagen 1. Agregar Tipo de Información
Agregamos un nuevo Atributo y en la configuración del atributo, seleccionamos Datos de Columna. En el Tipo de Datos de Columna, seleccionamos Solo Cadenas. En el Método de Búsqueda, seleccionamos Script de Lua.

Imagen 2. Agregar Atributos

Imagen 3. Editar Script de Lua
Luego hacemos clic en Editar Script de Lua para el código del script. Pegamos nuestro script en el campo de Script y lo guardamos.

Imagen 4. Script de Lua
Ahora podemos crear una nueva tarea de Descubrimiento de Datos. En la subsección de Filtros de Búsqueda, seleccionamos Tipos de Información y elegimos nuestro Tipo de Información para usar en el descubrimiento.

Imagen 5. Filtro de Descubrimiento de Datos
Para ejecutar la tarea, debemos seleccionar Frecuencia de Inicio Manual, presionar el botón de Aplicar para guardar los cambios y presionar Iniciar Ahora para ejecutar la tarea.

Imagen 6. Iniciar Tarea de Descubrimiento de Datos con Script de Lua
Si la tarea ha sido exitosa, podemos ver los resultados haciendo clic en el botón Mostrar. Esto mostrará los objetos de la base de datos que tienen datos sensibles en formato JSON.

Imagen 7. Resultados
En conclusión, aprovechar los scripts de Lua dentro de la función de Descubrimiento de Datos de DataSunrise mejora significativamente su capacidad para identificar datos únicos y sensibles más allá del alcance de los filtros predefinidos. Siguiendo los pasos descritos, puede crear scripts personalizados adaptados para buscar valores específicos de tipo texto en varios formatos de archivo, incluidos JSON. Este método no solo amplía el rango de datos buscables, sino que también proporciona una herramienta flexible y poderosa para los administradores de bases de datos que buscan proteger información sensible. La facilidad de integrar estos scripts a través de la Consola Web de DataSunrise y la subsiguiente capacidad de automatizar y ver tareas de descubrimiento agiliza el proceso, convirtiéndolo en una solución eficiente para la gestión de seguridad de datos integral.