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.

Skärmbild som visar maskeringsmetoden för att generera ett slumptal.
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

Navigeringsfönster

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

Konfigurera dynamisk datamaskering för databasen med Hjälp av PowerShell-cmdlets

Principer för datamaskering

Datamaskeringsregler

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

Datamaskeringsregler

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