Megosztás a következőn keresztül:


Dinamikus adatmaszkolás implementálása a Fabric Data Warehouse-ban

A következőkre vonatkozik:✅ SQL Analytics-végpont és Warehouse a Microsoft Fabricben

A dinamikus adatmaszkolás egy élvonalbeli adatvédelmi technológia, amely segít a szervezeteknek megvédeni a bizalmas információkat az adatbázisaikban. Lehetővé teszi, hogy maszkolási szabályokat definiáljon bizonyos oszlopokhoz, biztosítva, hogy csak az arra jogosult felhasználók lássák az eredeti adatokat, miközben mások számára elrejtik őket. A dinamikus adatmaszkolás további biztonsági réteget biztosít a felhasználók számára megjelenített adatok dinamikus módosításával a hozzáférési engedélyek alapján.

További információ: Dinamikus adatmaszkolás a Fabric-adattárházakban.

Előfeltételek

Mielőtt hozzákezdene, győződjön meg arról, hogy rendelkezik az alábbiakval:

  1. Aktív kapacitással vagy próbakapacitással rendelkező Microsoft Fabric-munkaterület.
  2. Egy raktár.
    1. A dinamikus adatmaszkolás az SQL Analytics-végponton működik. A cikk későbbi részében bemutatott módon maszkokat adhat hozzá a meglévő oszlopokhoz ALTER TABLE ... ALTER COLUMN .
    2. Ez a gyakorlat egy Warehouse-t használ.
  3. A felügyelethez egy felhasználó rendszergazdai, tagi vagy közreműködői jogosultságokkal rendelkezik a munkaterületen, vagy emelt szintű engedélyekkel rendelkezik a Raktáron.
    1. Ebben az oktatóanyagban a "rendszergazdai fiók".
  4. A teszteléshez egy felhasználó rendszergazdai, tagi vagy közreműködői jogosultságokkal nem rendelkezik a munkaterületen, és nem rendelkezik emelt szintű engedélyekkel a Raktáron.
    1. Ebben az oktatóanyagban a "tesztfelhasználó".

1. Csatlakozás

  1. Nyissa meg a Háló munkaterületet, és lépjen arra a raktárra, ahová dinamikus adatmaszkolást szeretne alkalmazni.
  2. Jelentkezzen be egy emelt szintű hozzáféréssel rendelkező fiókkal a Raktárban, vagy rendszergazdai/tagi/közreműködői szerepkörrel a munkaterületen, vagy a raktár engedélyeinek vezérlésével.

2. Dinamikus adatmaszkolás konfigurálása

  1. Jelentkezzen be a Háló portálra a rendszergazdai fiókjával.

  2. A Háló munkaterületen lépjen a raktárhoz.

  3. Válassza az Új SQL-lekérdezés lehetőséget, majd az Üres területen válassza az Új SQL-lekérdezés lehetőséget.

  4. Az SQL-szkriptben a záradék használatával definiáljon dinamikus adatmaszkolási MASKED WITH FUNCTION szabályokat. Példa:

    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
    
    • Az FirstName oszlopban csak a sztring első és utolsó két karaktere látható, középen - .
    • Az LastName oszlop a következőt jeleníti meg XXXX:
    • Az SSN oszlopban a sztring utolsó négy karaktere látható XXX-XX- .
  5. A szkript végrehajtásához válassza a Futtatás gombot.

  6. Ellenőrizze a szkript végrehajtását.

  7. A szkript a megadott dinamikus adatmaszkolási szabályokat alkalmazza a tábla kijelölt oszlopaira.

3. Dinamikus adatmaszkolás tesztelése

A dinamikus adatmaszkolási szabályok alkalmazása után tesztelheti a maszkolást úgy, hogy lekérdezi a táblát egy olyan tesztfelhasználóval, aki nem rendelkezik rendszergazdai, tagi vagy közreműködői jogosultságokkal a munkaterületen, vagy emelt szintű engedélyekkel rendelkezik a Raktáron.

  1. Jelentkezzen be például TestUser@contoso.comtesztfelhasználóként egy olyan eszközre, mint az Azure Data Studio vagy az SQL Server Management Studio.
  2. Tesztfelhasználóként futtasson egy lekérdezést a táblán. A maszkolt adatok a megadott szabályok szerint jelennek meg.
    SELECT * FROM dbo.EmployeeData;
    
  3. Rendszergazdai fiókjával adja meg a UNMASK tesztfelhasználó engedélyét.
    GRANT UNMASK ON dbo.EmployeeData TO [TestUser@contoso.com];
    
  4. Tesztfelhasználóként ellenőrizze, hogy egy bejelentkezett TestUser@contoso.com felhasználó lát-e maszkolt adatokat.
    SELECT * FROM dbo.EmployeeData;
    
  5. A rendszergazdai fiókjával vonja vissza a UNMASK tesztfelhasználó engedélyét.
    REVOKE UNMASK ON dbo.EmployeeData TO [TestUser];
    
  6. Ellenőrizze, hogy a tesztfelhasználó nem látja-e a maszkolt adatokat, csak a maszkolt adatokat.
    SELECT * FROM dbo.EmployeeData;
    
  7. Rendszergazdai fiókjával engedélyt adhat egy szerepkörre, és visszavonhatja azt UNMASK
    GRANT UNMASK ON dbo.EmployeeData TO [TestRole];
    REVOKE UNMASK ON dbo.EmployeeData TO [TestRole];
    

4. Dinamikus adatmaszkolási szabályok kezelése és módosítása

A meglévő dinamikus adatmaszkolási szabályok kezeléséhez vagy módosításához hozzon létre egy új SQL-szkriptet.

  1. A következő záradék használatával MASKED WITH FUNCTION adhat hozzá maszkot egy meglévő oszlophoz:

    ALTER TABLE dbo.EmployeeData
    ALTER COLUMN [email] ADD MASKED WITH (FUNCTION = 'email()');
    GO
    
    ALTER TABLE dbo.EmployeeData 
    ALTER COLUMN [email] DROP MASKED;
    

5. Törlés

  1. A tesztelési tábla megtisztításához:
    DROP TABLE dbo.EmployeeData;