Si los usuarios del proyecto tienen permisos de consulta sobre datos confidenciales en un proyecto de E-MapReduce (EMR), pero usted no desea que vean la información completa, aplique el enmascaramiento dinámico de datos a los resultados de las consultas. En este tema se describe cómo habilitar la función de enmascaramiento dinámico de datos para EMR y se proporciona un ejemplo de referencia.
Límites
Los clústeres de EMR solo admiten las funciones de identificación de datos confidenciales y enmascaramiento de datos de Data Security Guard. No son compatibles con el resto de las funciones de este servicio.
La identificación de datos confidenciales y el enmascaramiento de datos solo son compatibles con tipos específicos de clústeres y tablas de EMR. Para obtener más información, consulte Hive table types that support data preview in Data Map.
Los metadatos de Data Security Guard se actualizan con una periodicidad T+1. Para usar el enmascaramiento de datos de EMR, cree los datos que se van a enmascarar como mínimo un día antes.
Solo se admiten grupos de recursos exclusivos para programación. Para obtener más información, consulte Billing of exclusive resource groups for scheduling.
Preparativos
Requisitos previos
De forma predeterminada, Data Security Guard usa la cuenta del clúster asignada a la cuenta de Alibaba Cloud para muestrear los datos. Si su clúster tiene habilitada la autenticación LDAP o Kerberos y utiliza Ranger o DLF-Auth para gestionar los permisos de las tablas, configure la asignación de cuentas para la cuenta de Alibaba Cloud. Además, compruebe que la cuenta del clúster asignada tenga permiso para acceder a las tablas del clúster de EMR. Para obtener más información, consulte Data Studio (legacy): Register an EMR cluster.
Preparación de datos
Crear una tabla de EMR
-
Inicie sesión en la consola de DataWorks. En la región de destino, haga clic en en el panel de navegación izquierdo. Seleccione un espacio de trabajo en la lista desplegable y haga clic en Go to Data Development.
En la página Data Development, haga clic en Create y elija para crear un nodo de Hive.
-
Edite el código del nodo para crear la tabla
onefall_test_dsg.CREATE TABLE IF NOT EXISTS onefall_test_dsg ( username STRING ,gender STRING ,phone STRING ,email STRING ,card_no STRING ,address STRING ,zip_code STRING ) ROW FORMAT DELIMITED FIELDS TERMINATED BY',' ; -
Importe los datos de prueba a la tabla
onefall_test_dsg.Descargue el archivo de datos de prueba data.csv.
-
Importe los datos de prueba.
-
Cargue data.csv en un nodo del clúster de EMR y cargue los datos de prueba mediante SQL.
LOAD DATA LOCAL INPATH '/…/data.csv' OVERWRITE INTO TABLE onefall_test_dsg; -
Cargue data.csv en Object Storage Service (OSS) y cargue los datos de prueba mediante SQL.
LOAD DATA INPATH 'oss://bucket-name.Endpoint/…/data.csv' OVERWRITE INTO TABLE onefall_test_dsg ;
-
Actualización de metadatos de Data Security Guard
Los metadatos de Data Security Guard se actualizan con una periodicidad T+1. Después de crear y publicar la tabla onefall_test_dsg, espere hasta el día siguiente antes de configurar el enmascaramiento de datos.
Configurar el enmascaramiento de datos
Paso 1: crear reglas de identificación de datos
DataWorks utiliza reglas de identificación para reconocer los campos de las tablas de EMR. Antes de configurar las reglas de enmascaramiento, debe establecer las reglas de identificación correspondientes. Para obtener más información, consulte Configure data detection rules and tasks.
Acceder a la página de reglas de identificación de datos
Inicie sesión en la consola de DataWorks. En la región de destino, haga clic en en el panel de navegación izquierdo. En la página que aparece, haga clic en Go to Security Center.
-
En el panel de navegación izquierdo, haga clic en y luego haga clic en Try Now para acceder a Data Security Guard.
NotaSi su cuenta de Alibaba Cloud ya cuenta con autorización, el sistema lo dirigirá a la página principal de Data Security Guard.
Si su cuenta de Alibaba Cloud no está autorizada, se le redirigirá a la página de autorización de Data Security Guard. Para usar las funciones de Data Security Guard por primera vez, vaya a , seleccione Data Security Guard en el cuadro de diálogo emergente y complete la autorización.
En el panel de navegación izquierdo, elija para ir a la página Data Identification Rules.
Configurar reglas de identificación
Este ejemplo utiliza la tabla creada en la sección de preparación de datos para generar las reglas de identificación. El objetivo es identificar los campos gender, phone y email de la tabla onefall_test_dsg y aplicarles enmascaramiento.
-
Seleccione la categoría de datos para los campos confidenciales.
En la sección Built-in Classification Template de la izquierda, seleccione la categoría de datos correspondiente a los tipos de campo confidencial. Para obtener más información, consulte Configure data detection rules and tasks.
-
Cree los tipos de campo confidencial y configure las reglas de identificación.
En la esquina superior derecha, haga clic en Sensitive Field Type para abrir la página de configuración de reglas de identificación. Para consultar las instrucciones detalladas, consulte Configure data detection rules and tasks.
NotaPara facilitar la comprensión, establezca los nombres de los tipos de campo confidencial con los mismos nombres de los campos de la tabla
onefall_test_dsg:gender,phoneyemail. Cuando termine de configurar las Data Identification Rules, haga clic en Batch Publish en la esquina superior derecha y seleccione las reglas que creó para publicarlas de forma masiva. Una vez completada la configuración, la lista de tipos de campo confidencial mostrará gender (nivel 4), phone (nivel 2) y email (nivel 2). El método de definición de la regla de identificación será Custom, la precisión será del 100 % y el estado será Published.
Paso 2: crear reglas de enmascaramiento de datos
DataWorks enmascara los campos de las tablas de EMR mediante reglas de enmascaramiento de datos. Antes de configurar estas reglas, consulte Create a data masking rule.
Acceder a la página de reglas de enmascaramiento de datos
Inicie sesión en la consola de DataWorks y vaya a la página Data Security Guard. Para obtener más información, consulte Data Security Guard Overview.
Haga clic en Try Now para ir a la Home Page de Data Security Guard.
En el panel de navegación izquierdo, elija . En la página Data Masking Management puede crear tipos de escenarios de enmascaramiento y configurar las reglas correspondientes.
Crear escenarios de enmascaramiento
DataWorks incluye escenarios de enmascaramiento de nivel 1 integrados, como Data Development/Data Map Display Masking, Data Analysis Display Masking, MaxCompute Engine-level Masking, Hologres Engine-level Masking para el enmascaramiento dinámico y Data Integration Static Masking. Estos escenarios de nivel 1 son fijos; no se pueden crear, editar ni eliminar. Según sus necesidades de negocio, puede crear escenarios personalizados de nivel 2 dentro de ellos. Para obtener más información, consulte Create a data masking scenario.
-
Este ejemplo utiliza Data Development/Data Map Display Masking y Data Analysis Display Masking.
Nombre del escenario de nivel 2 dentro de Data Development/Data Map Display Masking:
Development display.Nombre del escenario de nivel 2 dentro de Data Analysis Display Masking:
SQL analysis.
Crear reglas de enmascaramiento
Después de crear los escenarios de enmascaramiento, haga clic en Masking Rule en la esquina superior derecha para crear tres reglas llamadas gender, phone y email. Para obtener más información, consulte Create a data masking rule.
-
Seleccione el escenario de enmascaramiento.
En la página Data Masking Management, establezca Masking Scenario en y haga clic en +Masking Rule a la derecha.
-
Cree las reglas de enmascaramiento de datos.
En la página Create Masking Rule, configure Sensitive Field Type, Masking Rule Name, Masking Scenario, Masking Method y otros parámetros. Para obtener más información, consulte Entry point for data masking rule configuration.
-
A continuación se muestra una tabla con la configuración de las tres reglas de enmascaramiento de este ejemplo.
Elemento de configuración
Contenido de la configuración
gender
email
phone
Tipo de campo confidencial
gender
email
phone
Nombre de la regla de enmascaramiento
gender
email
phone
Escenario de enmascaramiento
Development display,SQL analysisDevelopment display,SQL analysisDevelopment display,SQL analysisMétodo de enmascaramiento
Reemplazo de caracteres
Posición de reemplazo
Reemplazar todo
Método de reemplazo
Reemplazo aleatorio
Cifrado HASH
Marca de agua de datos
Off
Algoritmo de cifrado
MDS
Valor salt
5
Ocultamiento
Modo de redacción
NotaExisten varios métodos de enmascaramiento disponibles. Este ejemplo utiliza String Replacement, HASH Encryption y Masking Out como referencia. Para obtener más información, consulte Configure masking methods.
Paso 3: ejecutar la tarea de identificación de datos confidenciales
En el entorno de producción, después de que Data Security Guard obtiene los metadatos de EMR cada día, llama al openapi de metadatos de DataWorks para recuperar datos de muestra de las tablas e identifica los campos confidenciales según las reglas establecidas. Como este ejemplo es un caso de prueba, puede ejecutar manualmente la tarea de identificación para detectar dichos campos.
En el panel de navegación izquierdo, elija para ir a la página Sensitive Data Identification.
-
En la esquina superior izquierda de la página Sensitive Data Identification, haga clic en Run Task para abrir el panel Enable Sensitive Data Identification Task y configure los siguientes parámetros:
Task type: Manual task.
Account Used for Identification: la cuenta actual se utiliza para muestrear y analizar los datos. Los distintos permisos de la cuenta determinan diferentes alcances de muestreo. En este ejemplo, seleccione la cuenta de Alibaba Cloud.
Content Identification: puede elegir entre la identificación de contenido de tabla o la identificación de metadatos. En este ejemplo, seleccione la identificación de contenido.
Sampling quantity: especifique la cantidad de muestras. Mantenga el valor predeterminado de 100.
Scanning Range: establézcalo en Custom Scope y utilice el rango de espacio de trabajo o base de datos para definir el alcance. En la sección Workspace/Database Range, use el selector en cascada para elegir el tipo de origen de datos (como ODPS, EMR o HOLO), el espacio de trabajo y la base de datos. En este ejemplo, seleccione la base de datos de destino bajo el tipo EMR.
El nombre de la tabla en este ejemplo es
onefall_test_dsg.
-
Una vez definido el alcance, haga clic en Enable en la esquina inferior derecha del panel para iniciar la tarea de identificación.
NotaPara consultar los detalles de ejecución de la tarea de identificación, vaya a la página Sensitive Data Identification y haga clic en Task Execution Records.
Comprobar los resultados del enmascaramiento mediante consultas
Consultar el resultado del enmascaramiento en la vista previa de la tabla de EMR
Inicie sesión en la consola de DataWorks. En la región de destino, haga clic en en el panel de navegación izquierdo. En la página que aparece, haga clic en Go to Data Map.
Haga clic en el icono
de la izquierda para cambiar a la página de búsqueda. Abra la lista desplegable en la parte superior de la página, cambie al origen de datos E-MapReduce y busque el nombre de la tabla onefall_test_dsg.Haga clic en el nombre de la tabla dentro de los resultados de búsqueda. Cuando se abra el panel de detalles de la tabla, haga clic en Data Preview para previsualizar los datos. Tras buscar la tabla
onefall_test_dsg, podrá ver los resultados del enmascaramiento. Los métodos aplicados a cada campo son los siguientes: username se reemplaza por una concatenación aleatoria de palabras en inglés; gender se sustituye por una cadena aleatoria; phone se enmascara reemplazando los cuatro dígitos centrales con asteriscos (por ejemplo, 159**4449); email se procesa con hash (por ejemplo, 09154c5cf73f176c1ff964dd351585df); los campos card_no y address se ocultan por completo y no son visibles; zip_code** conserva su valor original.
Los campos de la tabla se enmascaran en Preview de acuerdo con las reglas de identificación y de enmascaramiento configuradas.
Consultar el resultado del enmascaramiento en la página Data Development
La consulta de datos enmascarados en la página de desarrollo de DataWorks se controla mediante un interruptor a nivel de proyecto en Data Development. Siga estos pasos para habilitarlo.
-
Inicie sesión en la consola de DataWorks. En la región de destino, haga clic en en el panel de navegación izquierdo. Seleccione un espacio de trabajo en la lista desplegable y haga clic en Go to Data Development.
Haga clic en el icono
de la izquierda para ir a la página de configuración del espacio de trabajo de desarrollo.En la página de configuración del espacio de trabajo de desarrollo, haga clic en Security Settings and Others y active el interruptor .
Probar el enmascaramiento de los resultados de consulta
-
Inicie sesión en la consola de DataWorks. En la región de destino, haga clic en en el panel de navegación izquierdo. Seleccione un espacio de trabajo en la lista desplegable y haga clic en Go to Data Development.
Haga clic en el icono
de la izquierda para ir a la página Ad Hoc Query. Luego haga clic en
y elija para crear un nodo de consulta ad hoc.-
En el nodo, consulte la tabla
onefall_test_dsgpara ver el resultado del enmascaramiento en la página Data Development.SELECT * FROM onefall_test_dsg;El resultado de la consulta muestra que la columna phone está parcialmente enmascarada (los cuatro dígitos centrales se reemplazan con **), la columna email se cifra como una cadena hash, y las columnas card_no y address** se ocultan por completo y no son visibles.