Saraketason suojaus Fabric-tietovarastossa
Koskee:✅ SQL-analytiikan päätepiste ja Microsoft Fabric -varasto
Saraketason suojaus yksinkertaistaa sovelluksen suojauksen suunnittelua ja koodausta, joten voit rajoittaa sarakkeiden käyttöoikeuksia arkaluontoisten tietojen suojaamista varten. Näin varmistetaan esimerkiksi, että tietyt käyttäjät voivat käyttää vain tiettyjä taulukon sarakkeita, jotka ovat olennaiset heidän osastolleen.
Saraketason suojaus tietotasolla
Käyttörajoituksen logiikka sijaitsee tietokantatasolla, ei yhdelläkään sovellustasolla. Tietokanta käyttää käyttöoikeuksia rajoituksia aina, kun tietojen käyttöä yritetään, mistä tahansa sovelluksesta tai raportointiympäristöstä, mukaan lukien Power BI. Tämä rajoitus tekee suojauksestasi luotettavamman ja luotettavamman pienentämällä yleisen suojausjärjestelmäsi pinta-alaa.
Saraketason suojaus koskee vain Fabricin Warehouse- tai SQL-analytiikan päätepisteisiin tehtyjä kyselyjä. Direct Lake -tilassa olevan varaston Power BI -kyselyt palaavat DirectQuery-tilaan, jossa ne noudattavat saraketason suojausta.
Tiettyjen sarakkeiden käytön rajoittaminen tietyille käyttäjille
Lisäksi saraketason suojaus on yksinkertaisempaa kuin lisänäkymien suunnitteleminen sarakkeiden suodattamiseksi pois käyttäjiä koskevien käyttöoikeusrajoitusten määräämiseksi.
Ota käyttöön saraketason suojaus GRANT T-SQL -lausekkeella. Yksinkertaisuuden vuoksi roolien käyttöoikeuksien määrittäminen on parempi vaihtoehto henkilöiden käyttämiselle.
Saraketason suojausta käytetään jaetussa varastossa tai lakehousessa, jota käytetään SQL-analytiikan päätepisteen kautta, koska pohjana oleva tietolähde ei ole muuttunut.
Vain Microsoft Entra -todennusta tuetaan. Jos haluat lisätietoja, katso Microsoft Entra -todentaminen vaihtoehtona SQL-todennukselle Microsoft Fabricissa.
Esimerkit
Tämä esimerkki luo taulukon ja rajoittaa sarakkeita, jotka charlie@contoso.com
näkyvät customers
taulukossa.
CREATE TABLE dbo.Customers
(CustomerID int,
FirstName varchar(100) NULL,
CreditCard char(16) NOT NULL,
LastName varchar(100) NOT NULL,
Phone varchar(12) NULL,
Email varchar(100) NULL);
Annamme Charlielle luvan käyttää vain asiakkaaseen liittyviä sarakkeita, mutta ei arkaluontoista CreditCard
saraketta:
GRANT SELECT ON Customers(CustomerID, FirstName, LastName, Phone, Email) TO [Charlie@contoso.com];
Sellaisenaan charlie@contoso.com
suoritetut kyselyt epäonnistuvat, jos ne sisältävät sarakkeen CreditCard
:
SELECT * FROM Customers;
Msg 230, Level 14, State 1, Line 12
The SELECT permission was denied on the column 'CreditCard' of the object 'Customers', database 'ContosoSales', schema 'dbo'.