SQL-detaljerede tilladelser i Microsoft Fabric

Gælder for:✅ SQL Analytics-slutpunkt og warehouse i Microsoft Fabric

Når standardtilladelserne fra arbejdsområderolle-tildeling eller item-tilladelser ikke giver dig det kontrolniveau, du har brug for, så brug standard SQL-konstruktioner i et Fabric-lager eller SQL-analyse-endpoint for mere detaljeret adgangskontrol.

For SQL-analyse-endpointet og Warehouse i Microsoft Fabric:

  • Administrer objekt-niveau sikkerhed med GRANT, REVOKE og DENY T-SQL-sætningerne.
  • Tildel brugere til SQL-roller, både brugerdefinerede databaseroller og indbyggede databaseroller.

Konfigurer brugergranulære tilladelser i et Fabric warehouse

  • For at en bruger kan forbinde til et Fabric warehouse eller SQL analytics-endpoint, skal du tildele dem en arbejdsområderolle eller give dem tilladelsen til at læse objektet. Uden tilladelsen Læs som minimum mislykkes forbindelsen.
  • For at opsætte en brugers granulære tilladelser, før de forbinder til warehouse, skal du først definere rettighederne i SQL. Giv dem derefter adgang ved at tildele en arbejdsområderolle eller give genstandstilladelser.

CREATE BRUGER-begrænsning

  • Du kan ikke eksplicit køre CREATE USER i et Fabric warehouse eller SQL analytics endpoint. Når du kører GRANT eller DENY, opretter Fabric automatisk databasebrugeren. Brugeren kan ikke oprette forbindelse, før de også har tilstrækkelige arbejdsområderettigheder.

Få vist mine tilladelser

Når en bruger har forbundet til et Fabric warehouse eller SQL-analyse-endpoint via SQL-forbindelsesstreng, kan de se de tilgængelige tilladelser ved at bruge sys.fn_my_permissions-funktionen.

Database-scoped tilladelser for den nuværende bruger:

SELECT *
FROM sys.fn_my_permissions(NULL, 'Database');

Skema-scoped tilladelser for den nuværende bruger:

SELECT *
FROM sys.fn_my_permissions('<schema-name>', 'Schema');

Objektbegrænsede tilladelser for den nuværende bruger:

SELECT *
FROM sys.fn_my_permissions('<schema-name>.<object-name>', 'Object');

Visningstilladelser givet eksplicit til brugere i et Fabric-lager

Når man er forbundet til et Fabric-lager eller et SQL-analyse-endpoint via SQL-forbindelsesstreng, kan en bruger med forhøjede rettigheder forespørge om tildelte tilladelser ved hjælp af systemvisninger. Denne forespørgsel returnerer ikke tilladelser, som brugere modtager gennem en Fabric-arbejdsområderolle eller -genstand.

SELECT DISTINCT pr.principal_id, pr.name, pr.type_desc,
    pr.authentication_type_desc, pe.state_desc, pe.permission_name
FROM sys.database_principals AS pr
INNER JOIN sys.database_permissions AS pe
    ON pe.grantee_principal_id = pr.principal_id;

Databeskyttelsesfunktioner i et Fabric-lager

I Warehouse- og SQL-analyse-endpointet kan du begrænse adgangen til specifikke kolonner og specifikke rækker i en tabel og maskere følsomme data for ikke-administratorer.