Sikkerhed på rækkeniveau med Power BI

Sikkerhed på rækkeniveau med Power BI kan bruges til at begrænse adgang til data for bestemte brugere. Filtre begrænser dataadgangen på rækkeniveau, og du kan definere filtre i roller. I Power BI-tjeneste har brugere med adgang til et arbejdsområde adgang til semantiske modeller i det pågældende arbejdsområde. Sikkerhed på rækkeniveau begrænser kun dataadgang for brugere med fremvisertilladelser . Den gælder ikke for Administration, medlemmer eller bidragydere.

Du kan konfigurere sikkerhed på rækkeniveau for datamodeller, der er importeret til Power BI, med Power BI. Du kan også konfigurere sikkerhed på rækkeniveau på semantiske modeller, der bruger DirectQuery, f.eks. SQL Server. For Analysis Services- eller Azure Analysis Services-liveforbindelser konfigurerer du sikkerhed på rækkeniveau i modellen, ikke i Power BI. Sikkerhedsindstillingen vises ikke for semantiske modeller med direkte forbindelse.

Definer roller og regler i Power BI Desktop

Du kan definere roller og regler i Power BI Desktop. Når du publicerer til Power BI, publicerer du også rolledefinitionerne.

Sådan definerer du sikkerhedsroller:

  1. Importér data til din Power BI Desktop-rapport, eller konfigurer en DirectQuery-forbindelse.

    Bemærk

    Du kan ikke definere roller i Power BI Desktop til direkte forbindelser til Analysis Services. Det skal du gøre i Analysis Services-modellen.

  2. Under fanen Udformning skal du vælge Administrer roller.

    Skærmbillede af fanen Udformning, hvor Administrer roller fremhæves.

  3. Vælg Opret i vinduet Administrer roller.

    Skærmbillede af vinduet Administrer roller, hvor Opret fremhæves.

  4. Angiv et navn til rollen under Roller.

    Bemærk

    Du kan ikke definere en rolle med et komma, f.eks London,ParisRole. .

  5. Under Tabeller skal du vælge den tabel, du vil anvende en DAX-regel (Data Analysis Expression) på.

  6. Angiv DAX-udtryk i feltet Tabelfilter-DAX-udtryk. Dette udtryk returnerer værdien true eller false. Eksempel: [Entity ID] = “Value”.

    Skærmbillede af vinduet Administrer roller, der fremhæver et eksempel på et DAX-udtryk.

    Bemærk

    Du kan bruge username() i dette udtryk. Vær opmærksom på, at username() har formatet DOMÆNE\brugernavn i Power BI Desktop. I Power BI-tjeneste og Power BI-rapportserver er det i formatet af brugerens hovednavn (UPN). Du kan også bruge userprincipalname(),som altid returnerer brugeren i formatet for brugerens hovednavn. username@contoso.com

  7. Når du har oprettet DAX-udtrykket, skal du markere afkrydsningsfeltet over udtryksfeltet for at validere udtrykket.

    Skærmbillede af dax-udtryksvinduet Tabelfilter, hvor markeringen fremhæves.

    Bemærk

    I dette udtryksfelt skal du bruge kommaer til at adskille DAX-funktionsargumenter, selvom du bruger en landestandard, der normalt bruger semikolonseparatorer (f.eks. fransk eller tysk).

  8. Vælg Gem.

Du kan ikke tildele brugere til en rolle i Power BI Desktop. Du tildeler dem i Power BI-tjeneste. Du kan aktivere dynamisk sikkerhed i Power BI Desktop ved at bruge DAX-funktionerne username() eller userprincipalname() og have konfigureret de korrekte relationer.

Filtrering af sikkerhed på rækkeniveau bruger som standard envejsfiltre, uanset om relationerne er angivet til en enkelt retning eller tovejs. Du kan aktivere tovejskrydsfiltrering manuelt med sikkerhed på rækkeniveau ved at markere relationen og markere afkrydsningsfeltet Anvend sikkerhedsfilter i begge retninger . Bemærk, at hvis en tabel deltager i flere tovejsrelationer, kan du kun vælge denne indstilling for en af disse relationer. Vælg denne indstilling, når du også har implementeret dynamisk sikkerhed på rækkeniveau på serverniveau, hvor sikkerhed på rækkeniveau er baseret på brugernavn eller logon-id.

Du kan finde flere oplysninger i Tovejskrydsfiltrering ved hjælp af DirectQuery i Power BI og artiklen Sikring af den tabellariske BI Semantiske model .

Skærmbillede af anvend sikkerhedsfilter.

Definer roller og regler i Power BI ved hjælp af udvidet sikkerhedseditor på rækkeniveau (prøveversion)

Du kan hurtigt og nemt definere sikkerhedsroller og filtre på rækkeniveau i Power BI ved hjælp af den forbedrede sikkerhedseditor på rækkeniveau. Med denne editor kan du skifte mellem at bruge standardrullelistegrænsefladen og en DAX-grænseflade. Når du publicerer til Power BI, publicerer du også rolledefinitionerne.

Sådan definerer du sikkerhedsroller ved hjælp af den forbedrede sikkerhedseditor på rækkeniveau:

  1. I Power BI Desktop skal du aktivere prøveversionen ved at gå til Filerindstillinger > og Indstillinger > Indstillinger > Prøveversionsfunktioner og aktivere "Udvidet sikkerhedseditor på rækkeniveau". Du kan også bruge denne editor i Tjenesten ved at redigere din datamodel i Power BI-tjeneste.

  2. Importér data til din semantiske Power BI-model, eller konfigurer en DirectQuery-forbindelse.

  3. Vælg Administrer roller på båndet.

    Skærmbillede af knappen Administrer roller på båndet Desktop.

  4. I vinduet Administrer roller skal du vælge Ny for at oprette en ny rolle.

    Skærmbillede af oprettelse af en ny rolle i den forbedrede sikkerhedseditor på rækkeniveau.

  5. Under Roller skal du angive et navn til rollen og vælge Angiv.

    Skærmbillede af omdøbning af en rolle i den forbedrede sikkerhedseditor på rækkeniveau.

  6. Under Vælg tabeller skal du vælge den tabel, du vil anvende et sikkerhedsfilter på rækkeniveau på.

  7. Under Filtrer data skal du bruge standardeditoren til at definere dine roller. De oprettede udtryk returnerer en true- eller false-værdi.

    Skærmbillede af et eksempel på brug af standardeditoren i den forbedrede sikkerhedseditor på rækkeniveau.

    Bemærk

    Det er ikke alle sikkerhedsfiltre på rækkeniveau, der understøttes i Power BI, der kan defineres ved hjælp af standardeditoren. Begrænsninger omfatter udtryk, der i dag kun kan defineres ved hjælp af DAX, herunder dynamiske regler som brugernavn() eller userprincipalname(). Hvis du vil definere roller ved hjælp af disse filtre, skal du skifte til at bruge DAX-editoren.

  8. Du kan også vælge Skift til DAX-editor for at skifte til at bruge DAX-editoren til at definere din rolle. Du kan skifte tilbage til standardeditoren ved at vælge Skift til standardeditor. Alle ændringer, der foretages i begge editorgrænseflader, bevares, når der skiftes grænseflader, når det er muligt.

    Skærmbillede af et eksempel på brug af dax-editoren i den forbedrede sikkerhedseditor på rækkeniveau.

    Når du definerer en rolle ved hjælp af DAX-editoren, der ikke kan defineres i standardeditoren, bliver du bedt om at angive en advarsel om, at hvis du skifter editor, kan nogle oplysninger gå tabt. Hvis du vil beholde disse oplysninger, skal du vælge Annuller og fortsætte med kun at redigere denne rolle i DAX-editoren.

    Skærmbillede af et eksempel på en fejldialogboks, når du skifter fra DAX til standardeditor i udvidet sikkerhedseditor på rækkeniveau.

  9. Vælg Gem

Valider rollerne i Power BI Desktop

Når du har oprettet dine roller, skal du teste resultaterne af rollerne i Power BI Desktop.

  1. Vælg Vis som under fanen Udformning.

    Skærmbillede af fanen Udformning, der fremhæver Vis som.

    Vinduet Vis som roller vises, hvor du kan se de roller, du har oprettet.

    Skærmbillede af vinduet Vis som roller, hvor Ingen er valgt.

  2. Vælg en rolle, du har oprettet. Vælg derefter OK for at anvende denne rolle.

    Rapporten gengiver de data, der er relevante for den pågældende rolle.

  3. Du kan også vælge Anden bruger og angive en given bruger.

    Skærmbillede af vinduet Vis som roller, hvor der er angivet en eksempelbruger.

    Det er bedst at angive UPN (User Principal Name), da det er det, Power BI-tjeneste og Power BI-rapportserver bruger.

    I Power BI Desktop viser Andre brugere kun forskellige resultater, hvis du bruger dynamisk sikkerhed baseret på dine DAX-udtryk. I dette tilfælde skal du inkludere brugernavnet samt rollen.

  4. Vælg OK.

    Rapporten gengives baseret på, hvad RLS-filtrene giver brugeren mulighed for at se.

    Bemærk

    Funktionen Vis som roller fungerer ikke for DirectQuery-modeller, hvor Enkeltlogon (SSO) er aktiveret.

Administrer sikkerhed på din model

Hvis du vil administrere sikkerheden på din semantiske model, skal du åbne det arbejdsområde, hvor du har gemt din semantiske model i Power BI-tjeneste og udføre følgende trin:

  1. I Power BI-tjeneste skal du vælge menuen Flere indstillinger for en semantisk model. Denne menu vises, når du peger på et semantisk modelnavn, uanset om du vælger det i navigationsmenuen eller på arbejdsområdesiden.

    Skærmbillede, der viser menuen Flere indstillinger i arbejdsområdet.

    Skærmbillede, der viser menuen Flere indstillinger i navigationsmenuen.

  2. Vælg Sikkerhed.

    Skærmbillede, der viser menuen Flere indstillinger med Sikkerhed valgt.

Sikkerhed fører dig til siden Sikkerhed på rolleniveau, hvor du føjer medlemmer til en rolle, du har oprettet. Bidragyder (og højere arbejdsområderoller) får vist Sikkerhed og kan tildele brugere til en rolle.

Arbejde med medlemmer

Tilføj medlemmer

I Power BI-tjeneste kan du føje et medlem til rollen ved at skrive mailadressen eller navnet på brugeren eller sikkerhedsgruppen. Du kan ikke tilføje grupper, der er oprettet i Power BI. Du kan tilføje medlemmer uden for din organisation.

Du kan bruge følgende grupper til at konfigurere sikkerhed på rækkeniveau.

Bemærk dog, at Microsoft 365-grupper ikke understøttes og ikke kan føjes til nogen roller.

Skærmbillede, der viser, hvordan du tilføjer et medlem.

Du kan også se, hvor mange medlemmer der er en del af rollen, ved hjælp af tallet i parentes ud for rollenavnet eller ud for Medlemmer.

Skærmbillede, der viser medlemmer i rolle.

Fjern medlemmer

Du kan fjerne medlemmer ved at vælge X ud for deres navn.

Skærmbillede, der viser, hvordan du fjerner et medlem.

Validering af rollen i Power BI-tjeneste

Du kan validere, at den rolle, du har defineret, fungerer korrekt i Power BI-tjeneste ved at teste rollen.

  1. Vælg Flere indstillinger (...) ud for rollen.
  2. Vælg Test som rolle.

Skærmbillede af test som rolleindstilling.

Du omdirigeres til den rapport, der blev publiceret fra Power BI Desktop med denne semantiske model, hvis den findes. Dashboards er ikke tilgængelige til test ved hjælp af indstillingen Test som rolle .

I sidehovedet vises den rolle, der anvendes. Test andre roller, en kombination af roller eller en bestemt person ved at vælge Vis nu som. Her kan du se vigtige tilladelsesoplysninger vedrørende den person eller rolle, der testes. Du kan få flere oplysninger om, hvordan tilladelser interagerer med sikkerhed på rækkeniveau, under RLS-brugeroplevelse.

Skærmbillede af Vis nu som rulleliste for en bestemt person.

Test andre rapporter, der er forbundet til den semantiske model, ved at vælge Visning i sidehovedet. Du kan kun teste rapporter, der er placeret i det samme arbejdsområde som din semantiske model.

Skærmbillede af Visning for at vælge en anden rapport, der skal testes.

Hvis du vil vende tilbage til normal visning, skal du vælge Tilbage til Sikkerhed på rækkeniveau.

Bemærk

Funktionen Test som rolle fungerer ikke for DirectQuery-modeller, hvor Enkeltlogon (SSO) er aktiveret. Det er desuden ikke alle aspekter af en rapport, der kan valideres i rollefunktionen Test som, herunder Q&A-visualiseringer, visualiseringer med hurtig indsigt og Copilot.

Brug af DAX-funktionen username() eller userprincipalname()

Du kan drage fordel af DAX-funktionerne username() eller userprincipalname() i dit datasæt. Du kan bruge dem i udtryk i Power BI Desktop. Når du publicerer din model, bruges den i Power BI-tjeneste.

I Power BI Desktop returnerer username() en bruger i formatet DOMÆNE\Bruger, og userprincipalname() returnerer en bruger i formatet user@contoso.com.

I Power BI-tjeneste returnerer brugernavn() og userprincipalname() både brugerens hovednavn (UPN). Dette ligner en mailadresse.

Brug af sikkerhed på rækkeniveau med arbejdsområder i Power BI

Hvis du publicerer din Power BI Desktop-rapport i et arbejdsområde i Power BI-tjeneste, anvendes rollerne for sikkerhed på rækkeniveau på medlemmer, der er tildelt rollen Fremviser i arbejdsområdet. Selvom seere får tilladelsen Opret til den semantiske model, gælder sikkerhed på rækkeniveau stadig. Hvis seere med buildtilladelser f.eks. bruger Analysér i Excel, er deres visning af dataene begrænset af sikkerhed på rækkeniveau. Medlemmer af arbejdsområdet, der er tildelt Administration, Medlem eller Bidragyder, har redigeringstilladelse til den semantiske model, og RLS gælder derfor ikke for dem. Hvis RLS skal gælde for personer i et arbejdsområde, kan du kun tildele dem rollen Læser . Læs mere om roller i arbejdsområder.

Overvejelser og begrænsninger

Du kan se de aktuelle begrænsninger for sikkerhed på rækkeniveau i cloudmodeller her:

  • Hvis du tidligere har defineret roller og regler i Power BI-tjeneste, skal du genoprette dem i Power BI Desktop.
  • Du kan kun definere sikkerhed på rækkeniveau på de semantiske modeller, der er oprettet med Power BI Desktop. Hvis du vil aktivere sikkerhed på rækkeniveau for semantiske modeller, der er oprettet med Excel, skal du først konvertere dine filer til PBIX-filer (Power BI Desktop). Få mere at vide.
  • Tjenesteprincipaler kan ikke føjes til en rolle for sikkerhed på rækkeniveau. Derfor anvendes sikkerhed på rækkeniveau ikke for apps, der bruger en tjenesteprincipal som den endelige effektive identitet.
  • Det er kun import- og DirectQuery-forbindelser, der understøttes. Direkte forbindelser til Analysis Services håndteres i modellen i det lokale miljø.
  • Funktionen Test som rolle/Vis som rolle fungerer ikke for DirectQuery-modeller, hvor enkeltlogon (SSO) er aktiveret.
  • Funktionen Test som rolle/visning som rolle viser kun rapporter fra arbejdsområdet semantiske modeller.
  • Funktionen Test som rolle/Vis som rolle fungerer ikke for sideinddelte rapporter.

Husk, at hvis en Power BI-rapport refererer til en række med RLS konfigureret, vises den samme meddelelse som for et slettet eller ikke-eksisterende felt. For disse brugere ser det ud til, at rapporten er brudt.

OFTE STILLEDE SPØRGSMÅL

Spørgsmål: Hvad nu, hvis jeg tidligere har oprettet roller og regler for et datasæt i Power BI-tjeneste? Virker de stadig, hvis jeg ikke gør noget?
Svar: Nej, visualiseringer gengives ikke korrekt. Du skal genoprette rollerne og reglerne i Power BI Desktop og derefter publicere til Power BI-tjeneste.

Spørgsmål: Kan jeg oprette disse roller for Analysis Services-datakilder?
Svar: Ja, hvis du har importeret dataene i Power BI Desktop. Hvis du bruger en direkte forbindelse, kan du ikke konfigurere sikkerhed på rækkeniveau i Power BI-tjeneste. Du definerer sikkerhed på rækkeniveau i Analysis Services-modellen i det lokale miljø.

Spørgsmål: Kan jeg bruge sikkerhed på rækkeniveau til at begrænse de kolonner eller målinger, der er tilgængelige for mine brugere?
Svar: Nej, hvis en bruger har adgang til en bestemt række med data, kan vedkommende se alle kolonner med data for den pågældende række. Hvis du vil begrænse adgangen til kolonner og kolonnemetadata, skal du overveje at bruge sikkerhed på objektniveau.

Spørgsmål: Giver sikkerhed på rækkeniveau mig mulighed for at skjule detaljerede data, men give adgang til data, der er opsummeret i visualiseringer?
Svar: Nej, du sikrer individuelle rækker med data, men brugerne kan altid se enten detaljerne eller de opsummerede data.

Spørgsmål: Min datakilde har allerede defineret sikkerhedsroller (f.eks. SQL Server-roller eller SAP BW-roller). Hvad er relationen mellem disse roller og sikkerhed på rækkeniveau?
Svar: Svaret afhænger af, om du importerer data eller bruger DirectQuery. Hvis du importerer data til dit Power BI-datasæt, bruges sikkerhedsrollerne i din datakilde ikke. I dette tilfælde skal du definere sikkerhed på rækkeniveau for at gennemtvinge sikkerhedsregler for brugere, der opretter forbindelse i Power BI. Hvis du bruger DirectQuery, bruges sikkerhedsrollerne i din datakilde. Når en bruger åbner en rapport, sender Power BI en forespørgsel til den underliggende datakilde, som anvender sikkerhedsregler på dataene baseret på brugerens legitimationsoplysninger.

Spørgsmål: Kan en bruger tilhøre mere end én rolle?
Svar: En bruger kan tilhøre flere roller, og rollerne er additive. Hvis en bruger f.eks. tilhører både rollerne "Salg" og "Marketing", kan vedkommende se data for begge disse roller.

Spørgsmål? Prøv at spørge Forslag til Power BI-community'et ? Bidrag med idéer til forbedring af Power BI