Dela via


Konfigurera detaljerad åtkomstkontroll för en SQL-databas

Gäller för:SQL-databas i Microsoft Fabric

Med infrastrukturarbetsyteroller och objektbehörigheter kan du enkelt konfigurera auktorisering för databasanvändare som behöver fullständig administrativ åtkomst eller skrivskyddad åtkomst till databasen.

Om du vill konfigurera detaljerad databasåtkomst använder du SQL-åtkomstkontroller: Roller på databasnivå, SQL-behörigheter och/eller säkerhet på radnivå (RLS).

Du kan hantera medlemskap i roller på databasnivå och definiera anpassade (användardefinierade) roller för vanliga dataåtkomstscenarier med hjälp av Fabric-portalen. Du kan konfigurera alla SQL-åtkomstkontroller med Hjälp av Transact-SQL.

Hantera SQL-databasnivåroller från Fabric-portalen

Så här börjar du hantera roller på databasnivå för en Fabric SQL-databas:

  1. Gå till och öppna databasen i Fabric-portalen.
  2. På huvudmenyn väljer du Säkerhet och sedan Hantera SQL-säkerhet.

Skärmbild från fabric-portalen med knappen för att öppna hantera SQL-säkerhet.

  1. Sidan Hantera SQL-säkerhet öppnas.

Skärmbild från fabric-portalen på knappen för att hantera SQL-säkerhetssidan.

Så här lägger du till en ny anpassad (användardefinierad) databasnivåroll som gör att dess medlemmar kan komma åt objekt i specifika scheman i databasen:

  1. På sidan Hantera SQL-säkerhet väljer du Nytt.
  2. På sidan Ny roll anger du ett rollnamn.
  3. Välj ett eller flera scheman.
  4. Välj behörigheter som du vill bevilja rollmedlemmar för varje valt schema. Behörigheterna Infoga, Uppdatera och Ta bort gäller för alla tabeller och vyer i ett schema. Behörigheten Kör gäller för alla lagrade procedurer och funktioner i ett schema. Skärmbild från infrastrukturportalen för att definiera en anpassad roll.
  5. Välj Spara.

Så här ändrar du definitionen av en anpassad databasnivåroll:

  1. På sidan Hantera SQL-säkerhet väljer du en anpassad roll och väljer Redigera.
  2. Ändra ett rollnamn eller rollens behörigheter för dina databasscheman.

    Kommentar

    sidan Hantera SQL-säkerhet kan du bara visa och hantera de fem behörigheterna på schemanivå. Om du har beviljat rollen , , , eller för ett annat objekt än ett schema, eller om du har beviljat rollen andra behörigheter via GRANT Transact-SQL-instruktionen, visar inte sidan Hantera SQL-säkerhet dem.EXECUTE DELETEUPDATEINSERTSELECT

  3. Välj Spara.

Så här tar du bort en anpassad roll på databasnivå:

  1. På sidan Hantera SQL-säkerhet väljer du en roll och väljer Ta bort.
  2. Välj Ta bort igen när du uppmanas att göra det.

Så här visar du listan över rollmedlemmar och lägger till eller tar bort rollmedlemmar:

  1. På sidan Hantera SQL-säkerhet väljer du en inbyggd roll eller en anpassad roll och väljer Hantera åtkomst.
    • Så här lägger du till rollmedlemmar:
      1. I fältet Lägg till personer, grupper eller appar skriver du ett namn och väljer en användare, grupp eller en app i sökresultaten. Du kan upprepa det om du vill lägga till andra personer, grupper eller appar.
      2. Markera Lägga till. Skärmbild från Infrastrukturportalen där rollmedlemmar läggs till.
      3. Om några av rollmedlemmarna, som du lägger till, inte har behörigheten Läs objekt för databasen i Infrastruktur, visas knappen Dela databas . Välj den för att öppna dialogrutan Bevilja personer åtkomst och välj Bevilja för att dela databasen. Om du beviljar delade behörigheter till databasen får läsobjektet behörighet till rollmedlemmarna som inte har det ännu. Mer information om hur du delar en SQL-databas finns i Dela din SQL-databas och hantera behörigheter.

      Viktigt!

      För att ansluta till en databas måste en användare eller ett program ha behörigheten Läsa objekt för databasen i Infrastrukturresurser, oberoende av deras medlemskap i SQL-databasnivåroller eller SQL-behörigheter i databasen.

    • Så här tar du bort rollmedlemmar:
      1. Välj rollmedlemmar som du vill ta bort.
      2. Välj Ta bort.
  2. Välj Spara för att spara ändringarna i listan över rollmedlemmar.

    Kommentar

    När du lägger till en ny rollmedlem som inte har något användarobjekt i databasen skapar Fabric-portalen automatiskt ett användarobjekt för rollmedlemmen åt dig (med hjälp av CREATE USER (Transact-SQL)). Infrastrukturportalen tar inte bort användarobjekt från databasen när en rollmedlem tas bort från en roll.

Konfigurera SQL-kontroller med Transact-SQL

Så här konfigurerar du åtkomst för en användare eller ett program med Hjälp av Transact SQL:

  1. Dela databasen med användaren/programmet eller med Microsoft Entra-gruppen som användaren/programmet också tillhör. Genom att dela databasen ser du till att användaren/programmet har behörigheten Läs objekt för databasen i Infrastrukturresurser, vilket krävs för att ansluta till databasen. Mer information finns i Dela din SQL-databas och hantera behörigheter.
  2. Skapa ett användarobjekt för användaren, programmet eller deras grupp i databasen med hjälp av CREATE USER (Transact-SQL). Mer information finns i Skapa databasanvändare för Microsoft Entra-identiteter.
  3. Konfigurera önskade åtkomstkontroller:
    1. Definiera anpassade (användardefinierade) roller på databasnivå. Om du vill hantera definitioner av anpassade roller använder du CREATE ROLE, ALTER ROLE och DROP ROLE.
    2. Lägg till användarobjektet i anpassade eller inbyggda (fasta) roller med ADD MEMBER alternativen och DROP MEMBER för ALTER ROLE-instruktionen.
    3. Konfigurera detaljerade SQL-behörigheter för användarobjektet med instruktionen GRANT, REVOKE och DENY .
    4. Konfigurera säkerhet på radnivå (RLS) för att bevilja/neka åtkomst till specifika rader i en tabell till användarobjektet.