Implementácia dynamického maskovania údajov v sklade údajov služby Fabric
Vzťahuje sa na:✅ koncový bod analýzy SQL a sklad v službe Microsoft Fabric
Dynamické maskovanie údajov je špičková technológia na ochranu údajov, ktorá pomáha organizáciám chrániť citlivé informácie v rámci databáz. Umožňuje definovať pravidlá pre maskovanie konkrétnych stĺpcov, čím sa zabezpečí, že pôvodné údaje sa zobrazia len oprávneným používateľom, pričom ich zakryjete pre ostatných. Dynamické maskovanie údajov poskytuje ďalšiu vrstvu zabezpečenia tým, že dynamicky mení údaje prezentované používateľom na základe ich povolení na prístup.
Ďalšie informácie nájdete v téme Dynamické maskovanie údajov v sklade údajov služby Fabric.
Požiadavky
Skôr než začnete, uistite sa, že máte nasledovné:
- Pracovný priestor služby Microsoft Fabric s aktívnou kapacitou alebo skúšobnou kapacitou.
- Sklad.
- Dynamické maskovanie údajov funguje v koncovom bode analýzy SQL. Masky môžete pridať do existujúcich stĺpcov pomocou,
ALTER TABLE ... ALTER COLUMN
ako je to popísané ďalej v tomto článku. - V tomto cvičení sa používa sklad.
- Dynamické maskovanie údajov funguje v koncovom bode analýzy SQL. Masky môžete pridať do existujúcich stĺpcov pomocou,
- Na spravovanie sa používateľovi s právami správcu, člena alebo prispievateľa v pracovnom priestore alebo so zvýšenými povoleniami v sklade.
- V tomto kurze sa bude nachádzať konto správcu.
- Ak chcete otestovať, používateľ bez práv správcu, člena alebo prispievateľa v pracovnom priestore a bez zvýšených povolení v sklade.
- V tomto kurze "testovať používateľa".
1. Pripojenie
- Otvorte pracovný priestor služby Fabric a prejdite do skladu, v ktorý chcete použiť dynamické maskovanie údajov.
- Prihláste sa pomocou konta so zvýšeným prístupom v sklade– buď rolu správcu/člena/prispievateľa v pracovnom priestore, alebo povolenia na ovládanie v sklade.
2. Konfigurácia dynamického maskovania údajov
Prihláste sa do portálu služby Fabric pomocou konta správcu.
V pracovnom priestore služby Fabric prejdite do svojho skladu.
Vyberte možnosť Nový dotaz SQL a potom v časti Prázdne vyberte položku Nový dotaz SQL.
V skripte SQL definujte pravidlá dynamického maskovania údajov pomocou klauzuly
MASKED WITH FUNCTION
. Napríklad: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
- Stĺpec
FirstName
zobrazuje iba prvý a posledný dva znaky reťazca-
v strede. - V stĺpci sa
LastName
zobrazujeXXXX
hodnota . - Stĺpec
SSN
zobrazuje,XXX-XX-
za ktorými nasledujú posledné štyri znaky reťazca.
- Stĺpec
Skript spustíte výberom tlačidla Spustiť.
Potvrďte vykonanie skriptu.
Skript použije zadané pravidlá pre maskovanie dynamických údajov na určené stĺpce v tabuľke.
3. Testovanie dynamického maskovania údajov
Keď sa použijú pravidlá pre dynamické maskovanie údajov, môžete maskovanie otestovať tak, že dotazujete tabuľku pomocou testovacieho používateľa, ktorý nemá práva správcu, člena alebo prispievateľa v pracovnom priestore alebo zvýšené povolenia v sklade.
- Prihláste sa do nástroja, ako je napríklad Azure Data Studio alebo SQL Server Management Studio, ako používateľ testu, napríklad TestUser@contoso.com.
- Ako testovací používateľ spustite dotaz na tabuľku. Maskované údaje sa zobrazujú podľa pravidiel, ktoré ste definovali.
SELECT * FROM dbo.EmployeeData;
- Pomocou konta správcu
UNMASK
udeľte povolenie testovaciemu používateľovi.GRANT UNMASK ON dbo.EmployeeData TO [TestUser@contoso.com];
- Ako testovací používateľ overte, či sa používateľ prihlásil tak, ako TestUser@contoso.com sa zobrazujú nezokryné údaje.
SELECT * FROM dbo.EmployeeData;
- Pomocou konta správcu
UNMASK
odoberiete povolenie testovaciemu používateľovi.REVOKE UNMASK ON dbo.EmployeeData TO [TestUser];
- Overte, či sa testovaciemu používateľovi nezobrazujú nezoradené údaje, len maskované údaje.
SELECT * FROM dbo.EmployeeData;
- Pomocou konta správcu
UNMASK
môžete udeliť a zrušiť povolenie na roluGRANT UNMASK ON dbo.EmployeeData TO [TestRole]; REVOKE UNMASK ON dbo.EmployeeData TO [TestRole];
4. Spravovanie a úprava pravidiel dynamického maskovania údajov
Ak chcete spravovať alebo upravovať existujúce pravidlá dynamického maskovania údajov, vytvorte nový skript SQL.
Do existujúceho stĺpca môžete pridať masku pomocou klauzuly
MASKED WITH FUNCTION
:ALTER TABLE dbo.EmployeeData ALTER COLUMN [email] ADD MASKED WITH (FUNCTION = 'email()'); GO
ALTER TABLE dbo.EmployeeData ALTER COLUMN [email] DROP MASKED;
5. Čistenie
- Vyčistíte túto testovaciu tabuľku:
DROP TABLE dbo.EmployeeData;