Gedetailleerde SQL-machtigingen in Microsoft Fabric

Van toepassing op:✅ SQL Analytics-eindpunt en -magazijn in Microsoft Fabric

Wanneer de standaardmachtigingen van de roltoewijzing van de werkruimte of itemmachtigingen u niet het benodigde beheerniveau geven, gebruikt u standaard SQL-constructies in een Fabric warehouse of SQL Analytics-eindpunt voor verfijnd toegangsbeheer.

Voor het SQL-analyse-eindpunt en Warehouse in Microsoft Fabric:

  • Beheer beveiliging op objectniveau met de T-SQL-instructies GRANT, REVOKE en DENY .
  • Wijs gebruikers toe aan SQL-rollen, zowel aangepaste databaserollen als ingebouwde databaserollen.

Gedetailleerde gebruikersmachtigingen configureren in een Fabric warehouse

  • Als een gebruiker verbinding kan maken met een Fabric warehouse- of SQL-analyse-eindpunt, moet u deze toewijzen aan een werkruimterol of de gebruiker de machtiging Lezen van het item verlenen. Zonder minimaal de machtiging Lezen mislukt de verbinding.
  • Als u de gedetailleerde machtigingen van een gebruiker wilt instellen voordat ze verbinding maken met het magazijn, definieert u eerst de machtigingen in SQL. Geef ze vervolgens toegang door een werkruimterol toe te wijzen of itemmachtigingen te verlenen.

beperking van CREATE USER

  • U kunt CREATE USER niet expliciet uitvoeren in een Fabric warehouse of SQL-analyses-eindpunt. Wanneer u GRANT of DENY uitvoert, maakt Fabric de databasegebruiker automatisch aan. De gebruiker kan pas verbinding maken als deze ook over voldoende rechten op werkruimteniveau beschikt.

Mijn machtigingen weergeven

Nadat een gebruiker verbinding heeft gemaakt met een Fabric warehouse of SQL Analytics-eindpunt via de SQL-verbindingsreeks, kunnen ze de beschikbare machtigingen bekijken met behulp van de sys.fn_my_permissions-functie.

Machtigingen op databaseniveau voor de huidige gebruiker:

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

Machtigingen op schemaniveau voor de huidige gebruiker:

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

Machtigingen voor objectbereik voor de huidige gebruiker:

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

Machtigingen weergeven die expliciet zijn verleend aan gebruikers in een Fabric warehouse

Wanneer een gebruiker met verhoogde machtigingen is verbonden met een Fabric warehouse of SQL Analytics-eindpunt via de SQL-verbindingsreeks, kan een gebruiker met verhoogde machtigingen query's uitvoeren op verleende machtigingen met behulp van systeemweergaven. Deze query retourneert geen machtigingen die gebruikers ontvangen via een Fabric werkruimterol of -item.

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;

Functies voor gegevensbeveiliging in een Fabric warehouse

In het eindpunt van warehouse en SQL-analyse kunt u de toegang tot specifieke kolommen en specifieke rijen in een tabel beperken en gevoelige gegevens van niet-beheerders maskeren.