Dynamisk datamaskning
GÄLLER FÖR:
Azure SQL Database Azure SQL Managed Instance
Azure Synapse Analytics
Azure SQL Database, Azure SQL Managed Instance och Azure Synapse Analytics stöd för dynamisk datamaskering. Med dynamisk datamaskering begränsas exponeringen av känsliga data genom att de maskeras för icke-privilegierade användare.
Dynamisk datamaskning förhindrar obehörig åtkomst till känsliga data genom att låta kunder ange hur mycket av känsliga data som avslöja med minimal påverkan på programnivån. Det är en principbaserad säkerhetsfunktion som fungerar genom att dölja känslig data i resultatuppsättningen för en fråga över angivna databasfält, medan data i databasen förblir oförändrad.
En tjänstrepresentant på ett kundtjänst kan till exempel identifiera en anropare genom att bekräfta flera tecken i sin e-postadress, men den fullständiga e-postadressen ska inte avslöjas för tjänstrepresentanten. En maskeringsregel kan definieras som maskerar alla e-postadresser i resultatuppsättningen för en fråga. Ett annat exempel är att en lämplig datamask kan definieras för att skydda personliga data, så att en utvecklare kan fråga produktionsmiljöer i felsökningssyfte utan att bryta mot efterlevnadsregler.
Grundläggande om dynamisk datamaskering
Du ställer in en princip för dynamisk datamaskering i Azure Portal genom att välja bladet Dynamisk datamaskering under Säkerhet i SQL Database konfigurationsfönstret. Den här funktionen kan inte konfigureras med portalen för SQL Managed Instance. Mer information finns i Dynamisk datamaskering.
Princip för dynamisk datamaskering
- SQL användare som undantas från maskering – en uppsättning SQL eller Azure AD-identiteter som hämtar avmaskerade data i SQL frågeresultat. Användare med administratörsbehörighet undantas alltid från maskering och ser ursprungliga data utan maskering.
- Maskeringsregler – En uppsättning regler som definierar de angivna fälten som ska maskeras och den maskeringsfunktion som används. De angivna fälten kan definieras med hjälp av ett databasschemanamn, tabellnamn och kolumnnamn.
- Maskeringsfunktioner – En uppsättning metoder som styr exponering av data för olika scenarier.
| Maskeringsfunktion | Maskeringslogik |
|---|---|
| Standardvärde | Fullständig maskering enligt datatyperna för de angivna fälten • Använd XXXX eller färre X om fältets storlek är mindre än 4 tecken för strängdatatyper (nchar, ntext, nvarchar). • Använd ett nollvärde för numeriska datatyper (bigint, bit, decimal, int, money, numerisk, smallint, smalltab, tinyint, float, real). • Använd 01-01-1900 för datatyper för datum/tid (datum, datetime2, datetime, datetimeoffset, smalldatetime, time). • För SQL variant används standardvärdet för den aktuella typen. • För XML används <masked/> dokumentet. • Använd ett tomt värde för särskilda datatyper (tidsstämpeltabell, hierarchyid, GUID, binär, bild, varbinary spatial types). |
| Kreditkort | Maskeringsmetoden, som visar de sista fyra siffrorna i de angivna fälten och lägger till en konstant sträng som ett prefix i form av ett kreditkort. XXXX-XXXX-XXXX-1234 |
| E-post | Maskeringsmetoden, som exponerar den första bokstaven och ersätter domänen med XXX.com med ett konstant strängprefix i form av en e-postadress. aXX@XXXX.com |
| Slumptal | Maskeringsmetod, som genererar ett slumpmässigt tal enligt de valda gränserna och de faktiska datatyperna. Om de angivna gränserna är lika är maskeringsfunktionen ett konstant tal.![]() |
| Anpassad text | Maskeringsmetoden, som exponerar de första och sista tecknen och lägger till en anpassad utfyllnadssträng i mitten. Om den ursprungliga strängen är kortare än det exponerade prefixet och suffixet används bara utfyllnadssträngen. prefix[padding]suffix ![]() |
Rekommenderade fält att maskera
DDM-rekommendationsmotorn flaggar vissa fält från databasen som potentiellt känsliga fält, vilket kan vara bra kandidater för maskering. På bladet Dynamisk datamaskering i portalen visas de rekommenderade kolumnerna för din databas. Allt du behöver göra är att klicka på Lägg till mask för en eller flera kolumner och sedan på Spara för att tillämpa en mask för dessa fält.
Hantera dynamisk datamaskering med hjälp av T-SQL
- Information om hur du skapar en dynamisk datamask finns i Skapa en dynamisk datamask.
- Information om hur du lägger till eller redigerar en mask på en befintlig kolumn finns i Lägga till eller redigera en mask på en befintlig kolumn.
- Information om hur du beviljar behörigheter att visa omaskerade data finns i Bevilja behörigheter för att visa omaskerade data.
- Om du vill ta bort en dynamisk datamask kan du se Släppa en dynamisk datamask.
Konfigurera dynamisk datamaskering för databasen med Hjälp av PowerShell-cmdlets
Principer för datamaskering
Datamaskeringsregler
- Get-AzSqlDatabaseDataMaskingRule
- New-AzSqlDatabaseDataMaskingRule
- Remove-AzSqlDatabaseDataMaskingRule
- Set-AzSqlDatabaseDataMaskingRule
Konfigurera dynamisk datamaskering för databasen med hjälp av REST API
Du kan använda REST API för att programmatiskt hantera datamaskeringsprinciper och regler. Den publicerade REST API stöder följande åtgärder:
Principer för datamaskering
- Skapa eller uppdatera:Skapar eller uppdaterar en datamaskeringsprincip för databasen.
- Hämta:Hämtar en princip för databasdatamaskering.
Datamaskeringsregler
- Skapa eller uppdatera:Skapar eller uppdaterar en regel för databasdatamaskering.
- Lista efter databas:Hämtar en lista över datamaskeringsregler för databaser.
Behörigheter
Det här är de inbyggda rollerna för att konfigurera dynamisk datamaskering:
Det här är de åtgärder som krävs för att använda dynamisk datamaskering:
Läsa/skriva:
- Microsoft.Sql/servers/databases/dataMaskingPolicies/* Läs:
- Microsoft.Sql/servers/databases/dataMaskingPolicies/read Write:
- Microsoft.Sql/servers/databases/dataMaskingPolicies/write
Mer information om behörigheter när du använder dynamisk datamaskering med kommandot T-SQL finns i Behörigheter
Se även
- Dynamisk datamaskering för SQL Server.
- Data Exposed-avsnitt om detaljerade behörigheter för Azure SQL dynamisk datamaskering på Channel 9.

