Cómo implementar el enmascaramiento dinámico de datos en Synapse Data Warehouse
Se aplica a:✅ punto de conexión de análisis de SQL y un almacén de Microsoft Fabric
El enmascaramiento de datos dinámico es una tecnología de protección de datos de vanguardia que ayuda a las organizaciones a proteger la información confidencial dentro de sus bases de datos. Permite definir reglas de enmascaramiento para columnas específicas, lo que garantiza que solo los usuarios autorizados vean los datos originales a la vez que se ocultan para otros usuarios. El enmascaramiento de datos dinámico proporciona una capa adicional de seguridad mediante la modificación dinámica de los datos presentados a los usuarios, en función de sus permisos de acceso.
Para obtener más información, consulte Enmascaramiento de datos dinámico en almacenamientos de datos de Fabric.
Requisitos previos
Antes de comenzar, asegúrese de que dispone de lo siguiente:
- Un área de trabajo de Microsoft Fabric con una capacidad activa o una capacidad de prueba.
- Un almacén.
- El enmascaramiento de datos dinámico funciona en el punto de conexión de análisis SQL. Puede agregar máscaras a las columnas existentes mediante
ALTER TABLE ... ALTER COLUMN
, como se muestra más adelante en este artículo. - En este ejercicio se usa un almacén.
- El enmascaramiento de datos dinámico funciona en el punto de conexión de análisis SQL. Puede agregar máscaras a las columnas existentes mediante
- Para la administración, un usuario con los derechos de administrador, miembro o colaborador en el área de trabajo o permisos elevados en el almacén.
- En este tutorial, la "cuenta de administrador".
- Para la prueba, un usuario sin los derechos de administrador, miembro o colaborador en el área de trabajo y sin permisos elevados en el almacén.
- En este tutorial, el "usuario de prueba".
1. Conectar
- Abra el área de trabajo de Fabric y vaya al almacén en el que desea aplicar el enmascaramiento de datos dinámico.
- Inicie sesión con una cuenta con acceso elevado en el almacén, ya sea el rol de administrador, miembro o colaborador en el área de trabajo o permisos de control en el almacenamiento.
2. Configuración del enmascaramiento de datos dinámicos
Inicie sesión en el portal de Fabric con su cuenta de administrador.
En el área de trabajo de Fabric, vaya al almacén y al punto de conexión de análisis SQL para el almacén de lago.
Seleccione la opción Nueva consulta SQL y, en En blanco, seleccione Nueva consulta SQL.
En el script SQL, defina las reglas de enmascaramiento de datos dinámico mediante la cláusula
MASKED WITH FUNCTION
. Por ejemplo:CREATE TABLE dbo.EmployeeData ( EmployeeID INT ,FirstName VARCHAR(50) MASKED WITH (FUNCTION = 'partial(1,"-",2)') NULL ,LastName VARCHAR(50) MASKED WITH (FUNCTION = 'default()') NULL ,SSN CHAR(11) MASKED WITH (FUNCTION = 'partial(0,"XXX-XX-",4)') NULL ,email VARCHAR(256) NULL ); GO INSERT INTO dbo.EmployeeData VALUES (1, 'TestFirstName', 'TestLastName', '123-45-6789','email@youremail.com'); GO INSERT INTO dbo.EmployeeData VALUES (2, 'First_Name', 'Last_Name', '000-00-0000','email2@youremail2.com'); GO
- La columna
FirstName
muestra solo los dos primeros y últimos dos caracteres de la cadena, con-
en el centro. - La columna
LastName
muestraXXXX
. - La columna
SSN
muestraXXX-XX-
, seguido de los cuatro últimos caracteres de la cadena.
- La columna
Seleccione el botón Ejecutar para ejecutar el script.
Confirme la ejecución del script.
El script aplicará las reglas de enmascaramiento de datos dinámico especificadas a las columnas designadas de la tabla.
3. Probar el enmascaramiento de datos dinámico
Una vez aplicadas las reglas de enmascaramiento de datos dinámico, puede probar el enmascaramiento consultando la tabla con un usuario de prueba que no tenga derechos de administrador, miembro o colaborador en el área de trabajo o permisos elevados en el almacenamiento.
- Inicie sesión en una herramienta como Azure Data Studio o SQL Server Management Studio como usuario de prueba, por ejemplo TestUser@contoso.com.
- Como usuario de prueba, ejecute una consulta en la tabla. Los datos enmascarados se muestran según las reglas definidas.
SELECT * FROM dbo.EmployeeData;
- Con la cuenta de administrador, conceda el permiso
UNMASK
del usuario de prueba.GRANT UNMASK ON dbo.EmployeeData TO [TestUser@contoso.com];
- Como usuario de prueba, compruebe que un usuario que ha iniciado sesión como TestUser@contoso.com puede ver los datos desenmascarados.
SELECT * FROM dbo.EmployeeData;
- Con la cuenta de administrador, revoque el permiso
UNMASK
del usuario de prueba.REVOKE UNMASK ON dbo.EmployeeData TO [TestUser];
- Compruebe que el usuario de prueba no puede ver datos desenmascarados, solo los datos enmascarados.
SELECT * FROM dbo.EmployeeData;
- Con la cuenta de administrador, puede conceder y revocar el permiso
UNMASK
a un rolGRANT UNMASK ON dbo.EmployeeData TO [TestRole]; REVOKE UNMASK ON dbo.EmployeeData TO [TestRole];
4. Administrar y modificar reglas de enmascaramiento de datos dinámico
Para administrar o modificar las reglas existentes de enmascaramiento de datos dinámico, cree un nuevo script SQL.
La cláusula
MASKED WITH FUNCTION
permite agregar máscaras a columnas existentes:ALTER TABLE dbo.EmployeeData ALTER COLUMN [email] ADD MASKED WITH (FUNCTION = 'email()'); GO
ALTER TABLE dbo.EmployeeData ALTER COLUMN [email] DROP MASKED;
5. Limpieza
- Para limpiar esta tabla de pruebas:
DROP TABLE dbo.EmployeeData;
Contenido relacionado
- Enmascaramiento dinámico de datos en el almacenamiento de datos de Fabric
- Roles de área de trabajo en el almacenamiento de datos de Fabric
- Seguridad de nivel de columna en el almacenamiento de datos de Fabric
- Seguridad de nivel de fila en el almacenamiento de datos de Fabric
- Seguridad para el almacenamiento de datos en Microsoft Fabric