Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of mappen te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen om mappen te wijzigen.
Beveiliging op kolomniveau (CLS) is een functie van OneLake-beveiliging (preview) waarmee u toegang hebt tot geselecteerde kolommen in een tabel in plaats van volledige toegang tot de tabel. Met CLS kunt u een subset van tabellen opgeven waartoe gebruikers toegang hebben. Kolommen die uit de lijst worden verwijderd, zijn niet zichtbaar voor gebruikers.
Vereiste voorwaarden
- Een item in OneLake met OneLake-beveiliging is ingeschakeld. Zie Aan de slag met OneLake-rollen voor gegevenstoegang voor meer informatie.
- Schakel het SQL Analytics-eindpunt in het lakehouse over naar de identiteitsmodus van de gebruiker via het tabblad Beveiliging .
- Voor het maken van semantische modellen gebruikt u de stappen om een DirectLake-model te maken.
- Zie de sectie bekende beperkingen voor een volledige lijst met beperkingen.
Beveiliging op kolomniveau afdwingen
OneLake-beveiligings-CLS wordt op een van de volgende twee manieren afgedwongen:
- Gefilterde tabellen in Fabric-engines: Query's naar de Fabric-engines, zoals Spark-notebooks, leiden ertoe dat de gebruiker alleen de kolommen ziet die ze mogen zien volgens de CLS-regels.
- Geblokkeerde toegang tot tabellen: Tabellen waarop CLS-regels zijn toegepast, kunnen niet worden gelezen buiten ondersteunde Fabric-engines.
Voor gefilterde tabellen zijn de volgende gedragingen van toepassing:
- CLS-regels beperken de toegang tot gebruikers met de rollen Beheerder, Lid en Inzender niet.
- Als de CLS-regel niet overeenkomt met de tabel waarop deze is gedefinieerd, mislukt de query en worden er geen kolommen geretourneerd. Als CLS bijvoorbeeld is gedefinieerd voor een kolom die geen deel uitmaakt van de tabel.
- Query's van CLS-tabellen mislukken met een fout als een gebruiker deel uitmaakt van twee verschillende rollen en een van de rollen beveiliging op rijniveau (RLS) heeft.
- CLS-regels kunnen alleen worden afgedwongen voor Delta Parquet-tabelobjecten.
- CLS-regels die worden toegepast op niet-Delta-tabelobjecten blokkeren de toegang tot de hele tabel voor leden van de rol.
- Als een gebruiker een
select *query uitvoert op een tabel waar ze alleen toegang hebben tot een aantal kolommen, gedragen CLS-regels zich anders, afhankelijk van de Fabric-engine.- Spark-notebooks: de query slaagt en toont alleen de toegestane kolommen.
- SQL Analytics-eindpunt: kolomtoegang wordt geblokkeerd voor de kolommen die de gebruiker niet kan openen.
- Semantische modellen: kolomtoegang wordt geblokkeerd voor de kolommen die de gebruiker niet kan openen.
Beveiligingsregels op kolomniveau definiëren
U kunt beveiliging op kolomniveau definiëren als onderdeel van een OneLake-beveiligingsrol voor elke Delta Parquet-tabel in de sectie Tabellen van een item. CLS wordt altijd voor een tabel opgegeven en is ofwel ingeschakeld of uitgeschakeld. CLS is standaard uitgeschakeld en gebruikers hebben toegang tot alle kolommen. Gebruikers kunnen CLS inschakelen en kolommen uit de lijst verwijderen om de toegang in te trekken.
Belangrijk
Als u de toegang tot een kolom verwijdert, wordt de toegang tot die kolom niet geweigerd als een andere rol toegang verleent.
Gebruik de volgende stappen om beveiliging op kolomniveau te definiëren:
Navigeer naar uw gegevensitem en selecteer
OneLake-beveiliging beheren (preview).a0> Selecteer een bestaande rol waarvoor u de beveiliging van tabellen of mappen wilt definiëren of selecteer Nieuw om een nieuwe rol te maken.
Selecteer op de pagina met rolgegevens meer opties (...) naast de tabel waarvoor u CLS wilt definiëren en selecteer vervolgens Kolombeveiliging (preview).
CLS voor een tabel is standaard uitgeschakeld. Selecteer CLS inschakelen of maak een nieuwe regel om deze in te schakelen.
De gebruikersinterface wordt gevuld met een lijst met kolommen voor die tabel die de gebruikers mogen zien. Standaard worden alle kolommen weergegeven.
Als u de toegang tot een kolom wilt beperken, schakelt u het selectievakje naast de kolomnaam in en selecteert u Verwijderen. Ten minste één kolom moet in de lijst met toegestane kolommen blijven staan.
Selecteer Opslaan om de rol bij te werken.
Als u een verwijderde kolom wilt toevoegen, selecteert u Nieuwe regel. Met deze actie wordt een nieuwe CLS-regelvermelding toegevoegd aan het einde van de lijst. Gebruik vervolgens de vervolgkeuzelijst om de kolom te kiezen die u wilt opnemen in de toegang.
Nadat u de wijzigingen hebt voltooid, selecteert u Opslaan.
OneLake-beveiliging inschakelen voor SQL Analytics-eindpunt
Voordat u OneLake-beveiliging met SQL Analytics-eindpunt kunt gebruiken, moet u de identiteitsmodus van de gebruiker inschakelen. Nieuw gemaakte SQL-analyse-eindpunten worden standaard ingesteld op de identiteitsmodus van de gebruiker, dus deze stappen moeten worden gevolgd voor bestaande SQL-analyse-eindpunten.
Notitie
Overschakelen naar de identiteitsmodus van de gebruiker hoeft slechts eenmalig te worden gedaan per SQL Analytics-eindpunt. Eindpunten die niet zijn overgeschakeld naar de identiteitsmodus van de gebruiker, blijven een gedelegeerde identiteit gebruiken om machtigingen te evalueren.
Navigeer naar het EINDPUNT van SQL Analytics.
Selecteer in de sql Analytics-eindpuntervaring het tabblad Beveiliging op het bovenste lint.
Selecteer de identiteit van de gebruiker onder de toegangsmodus van OneLake.
Selecteer Ja in de prompt , gebruik de identiteit van de gebruiker.
Nu is het EINDPUNT van SQL Analytics gereed voor gebruik met OneLake-beveiliging.
Beveiliging op rij- en kolomniveau combineren
Beveiliging op rij- en kolomniveau kan samen worden gebruikt om gebruikerstoegang tot een tabel te beperken. De twee beleidsregels moeten echter worden toegepast met één OneLake-beveiligingsrol. In dit scenario wordt de toegang tot gegevens beperkt volgens de regels die zijn ingesteld in de ene rol.
OneLake-beveiliging biedt geen ondersteuning voor de combinatie van twee of meer rollen waarin een RLS-regels bevat en een andere bevat CLS-regels. Gebruikers die toegang proberen te krijgen tot tabellen die deel uitmaken van een niet-ondersteunde combinatie van rollen, ontvangen queryfouten.