DataSunrise Masking para Oracle
DataSunrise Masking para Oracle está diseñado para proteger los datos sensibles en tránsito de amenazas de usuarios internos y externos. La característica ofusca los datos originales y proporciona a los usuarios caracteres aleatorios en lugar de registros reales de la base de datos. De esta manera, los usuarios no autorizados todavía pueden trabajar con la base de datos de producción, pero nunca obtendrán acceso a la información sensible original.
Las herramientas de máscara de datos para Oracle de DataSunrise previenen eficientemente la exposición de información sensible al otorgar acceso a la base de datos a organizaciones terceras. Hay muchas ocasiones en las que las organizaciones necesitan compartir datos de sus bases de datos de producción con empleados terceros. Aquí hay algunos ejemplos:
- Una determinada organización contrata a especialistas de TI subcontratados para personalizar su sistema empresarial o realizar pruebas de bases de datos, actualizar, etc.
- Una empresa de salud proporciona a los investigadores médicos información sobre ensayos clínicos.
- Una empresa minorista comparte información de ventas con investigadores de mercado.
El punto es que, en la mayoría de los casos, los especialistas externos no necesitan los datos reales que contiene la base de datos. Un entorno que imite una base de datos de producción real es suficiente. La mejor manera de proteger los datos sensibles mientras se transfieren a terceros es reemplazarlos con datos neutrales. Y la forma más eficiente de hacer esto es mediante el enmascaramiento.
El punto importante es que los datos enmascarados deben ser lo suficientemente consistentes para soportar el funcionamiento adecuado de la aplicación de terceros. En palabras simples, el propósito principal del enmascaramiento es hacer que los datos sensibles sean inútiles para los delincuentes mientras se mantienen útiles para quienes deben recibirlos.
A veces, en tales situaciones, se utiliza el enmascaramiento estático. Permite proporcionar a la tercera parte una copia autónoma de una base de datos real que contenga algunos datos neutrales en lugar de datos sensibles. Aunque este método es confiable, podría ser costoso y llevar mucho tiempo.
Es por eso que, en la mayoría de los casos, el enmascaramiento de datos dinámico es preferible. A diferencia del enmascaramiento de datos estático, el enmascaramiento de datos dinámico consiste en ofuscar los datos sensibles en tiempo real mientras se transfieren a las partes externas. En este caso, el contenido real de la base de datos permanece intacto y solo se ofusca la salida de la base de datos.
Cómo se realiza el enmascaramiento de datos para Oracle
La herramienta de enmascaramiento dinámico de DataSunrise funciona como un proxy entre los clientes (esos especialistas de terceros) y su base de datos Oracle. Los clientes contactan con la base de datos de producción únicamente a través del proxy de DataSunrise (cualquier acceso directo a la base de datos está deshabilitado).
La herramienta de enmascaramiento de datos para Oracle intercepta la consulta del cliente, la modifica según las políticas de seguridad existentes y redirige la consulta modificada (“enmascarada”) a la base de datos. Al recibir una consulta “enmascarada”, la base de datos proporciona datos falsos (ofuscados) en lugar de los valores reales originalmente solicitados por el cliente. Dado que ningún dato real abandona la base de datos, este método de ofuscación de datos es muy confiable.
Así es como se ve
Por ejemplo, aquí tenemos una tabla de Oracle que parece una lista de clientes, incluyendo direcciones, correos electrónicos y números de tarjetas de crédito. Antes de exportar esta lista a un sistema de terceros, necesitamos ofuscar los datos personales de los clientes.
Para hacer esto, se crearon algunas reglas de enmascaramiento. Junto con patrones de enmascaramiento de uso general, DataSunrise proporciona algoritmos de ofuscación para correos electrónicos y números de tarjetas de crédito. Así que, hemos creado algunas reglas de enmascaramiento para ofuscar los datos en las columnas que contienen números de tarjetas de crédito y direcciones de correo electrónico de los clientes. Supongamos que dejar otras columnas sin enmascarar es aceptable.
Y así es como se ve la tabla después de aplicar el enmascaramiento. Como puede ver, los datos en las columnas especificadas fueron ofuscados y, por lo tanto, se volvieron inútiles para un posible delincuente.
Detalles internos del enmascaramiento de datos para Oracle
Ahora veamos cómo se ve el enmascaramiento en SQL.
Aquí está la consulta original del cliente:
/* + NO_PARALLEL */ SELECT ROWID "ROWID", ORA_ROWSCN "ORA_ROWSCN", ORDERNUMBER ORDERNUMBER, FIRSTNAME FIRSTNAME, LASTNAME LASTNAME, ADDRESS ADDRESS, ZIP ZIP, EMAIL EMAIL, CARD CARD FROM "SALES"."CUSTOMERS"
Y la consulta SQL que la base de datos recibe después de aplicar el enmascaramiento es:
/* + NO_PARALLEL */ SELECT ROWID "ROWID", ORA_ROWSCN "ORA_ROWSCN", ORDERNUMBER ORDERNUMBER, FIRSTNAME FIRSTNAME, LASTNAME LASTNAME, ADDRESS ADDRESS, ZIP ZIP, CAST(regexp_replace(SUBSTR("EMAIL", 0, REGEXP_INSTR("EMAIL", '.[[:alnum:]]+($| )')), '[[:alnum:]]', '*') || SUBSTR("EMAIL", REGEXP_INSTR("EMAIL", '.[[:alnum:]]+($| )') + 1) AS VARCHAR2(50)) EMAIL, CAST(TRANSLATE(SUBSTR("CARD", 0, LENGTH(TRIM("CARD")) - 4), '0123456789', 'XXXXXXXXXX') || SUBSTR("CARD", LENGTH(TRIM("CARD")) - 3) AS VARCHAR2(20)) CARD FROM "SALES"."CUSTOMERS"