Bezpieczeństwo na poziomie wierszy (RLS), w kontekście Power BI, odnosi się do ograniczenia wierszy danych, które określony użytkownik może zobaczyć podczas przeglądania raportu. Pozwala to lepiej kontrolować, co użytkownicy mogą zobaczyć w opublikowanym raporcie na podstawie konta logowania do usługi Power BI.
Spis treści:
1.Power BI – podstawowe informacje
3.3.Różnica pomiędzy statycznym a dynamicznym RLS w Power BI
Rozważ TTMS jako zaufanego partnera w Power BI
1. Power BI – podstawowe informacje
Power BI to solidne i wszechstronne narzędzie do analizy biznesowej i wizualizacji danych opracowane przez firmę Microsoft. Umożliwia organizacjom przekształcanie nieprzetworzonych danych w wartościowe spostrzeżenia, umożliwiając użytkownikom podejmowanie świadomych decyzji. Dzięki intuicyjnemu interfejsowi i solidnym możliwościom analitycznym usługa Power BI umożliwia użytkownikom łączenie się z różnymi źródłami danych, tworzenie interaktywnych raportów i pulpitów nawigacyjnych oraz bezpieczne udostępnianie ich w całej organizacji. Platforma oferuje szereg zaawansowanych funkcji, w tym modelowanie danych, czyszczenie danych i zaawansowaną analitykę, umożliwiając użytkownikom odkrywanie ukrytych wzorców, trendów i korelacji w ich danych. Dzięki opartej na chmurze usłudze Power BI użytkownicy mogą uzyskiwać dostęp do raportów i pulpitów nawigacyjnych oraz współpracować nad nimi z dowolnego miejsca i na dowolnym urządzeniu. Usługa Power BI zyskała popularność dzięki przyjaznemu dla użytkownika interfejsowi, rozbudowanym możliwościom integracji z innymi produktami firmy Microsoft oraz tętniącej życiem społeczności, która przyczynia się do jej ciągłego rozwoju i ekspansji.
2. Bezpieczeństwo w Power BI
Bezpieczeństwo to nadrzędny aspekt usługi Power BI, zapewniający ochronę i poufność danych w obrębie platformy. Usługa Power BI oferuje niezawodne funkcje zabezpieczeń, które chronią poufne informacje i kontrolują dostęp do raportów i pulpitów nawigacyjnych. Zapewnia szczegółową kontrolę bezpieczeństwa, taką jak Row-Level Security Power BI (RLS), która umożliwia organizacjom ograniczenie widoczności danych w oparciu o role i obowiązki użytkowników. Ponadto usługa Power BI obejmuje kontrolę dostępu opartą na rolach (RBAC), umożliwiając administratorom definiowanie uprawnień użytkowników i zarządzanie nimi na różnych poziomach, dzięki czemu tylko upoważnione osoby mogą przeglądać określone dane i wchodzić z nimi w interakcję. Usługa Power BI obsługuje również bezpieczne połączenia danych, szyfrowanie podczas przesyłania i w stanie spoczynku oraz zgodność ze standardowymi w branży certyfikatami bezpieczeństwa, takimi jak ISO 27001 i RODO. Firma Microsoft, jako dostawca usługi Power BI, przywiązuje dużą wagę do bezpieczeństwa i prywatności danych, regularnie aktualizując i ulepszając swoje środki bezpieczeństwa w celu eliminowania pojawiających się zagrożeń i luk w zabezpieczeniach. Skupienie się na bezpieczeństwie budzi zaufanie do organizacji korzystających z usługi Power BI do obsługi poufnych danych.
3. Rodzaje RLS w Power BI
Istnieją różne metody używania RLS z usługą Power BI. Zabezpieczenia na poziomie wierszy można skonfigurować jako zwykłe, tzw. statyczny RLS lub dynamiczny RLS.
3.1 Statyczny RLS
Statyczne zabezpieczenia RLS, znane również jako „Zabezpieczenia na poziomie wiersza”, to zaawansowana funkcja usługi Power BI, która umożliwia organizacjom wdrażanie szczegółowej kontroli dostępu na poziomie wierszy. W przypadku statycznej usługi RLS usługi Power BI logika zabezpieczeń jest definiowana w samym pliku usługi Power BI (pbix) podczas procesu implementacji usługi RLS. Ta logika zabezpieczeń obejmuje tworzenie ról z wyrażeniami, które filtrują dane na podstawie określonych warunków.
Statyczny RLS w Power BI umożliwia administratorom definiowanie ról zabezpieczeń, które określają, do których wierszy danych dany użytkownik może uzyskiwać dostęp i przeglądać. Te role są powiązane z warunkami lub filtrami, które ograniczają dane na podstawie atrybutów użytkownika, takich jak dział, region lub inne odpowiednie kryteria.
Konfigurując statyczne RLS, organizacje mogą zapewnić, że każdy użytkownik widzi tylko podzbiór danych, do których ma dostęp, zachowując w ten sposób wysoki poziom bezpieczeństwa i poufności danych. Statyczne reguły RLS są osadzone w pliku usługi Power BI, a wszelkie zmiany w logice zabezpieczeń wymagają zmodyfikowania pliku PBIX, zapisania go i ponownego opublikowania.
Implementacja statycznych RLS w usłudze Power BI umożliwia scentralizowane zarządzanie rolami zabezpieczeń, zapewniając spójność między raportami i pulpitami nawigacyjnymi. Usprawnia proces utrzymywania i aktualizowania reguł bezpieczeństwa, ponieważ zmiany dokonane w rolach można zastosować uniwersalnie do wszystkich raportów, które wykorzystują te role.
Static RLS zapewnia solidny mechanizm wymuszania zabezpieczeń, zapewniający Power BI dostęp na poziomie wiersza, umożliwiając organizacjom kontrolowanie dostępu do danych na podstawie predefiniowanych reguł i zapewniając ochronę poufnych informacji.
3.2 Dynamiczny RLS
Dynamiczne RLS, znane również jako „Dynamiczne zabezpieczenia na poziomie wiersza”, to kolejna zaawansowana funkcja usługi Power BI, która umożliwia organizacjom wdrażanie kontroli dostępu do danych na podstawie atrybutów użytkownika przechowywanych w samych danych. W przypadku dynamicznego RLS definicja bezpieczeństwa jest tworzona w połączeniu z informacjami o koncie użytkownika już obecnymi w tabelach danych.
W dynamicznym RLS logika zabezpieczeń nie jest zdefiniowana w pliku usługi Power BI, ale w dodatkowych tabelach, które są ładowane do modelu danych. Te tabele zawierają informacje logowania użytkownika i odpowiednie atrybuty danych, które określają jego prawa dostępu. Informacje logowania użytkownika mogą pochodzić z różnych źródeł, takich jak listy Active Directory lub SharePoint.
Gdy użytkownik uzyskuje dostęp do raportu lub pulpitu nawigacyjnego usługi Power BI, usługa Power BI dynamicznie stosuje reguły RLS na podstawie poświadczeń użytkownika. Wykorzystując funkcje, takie jak USERNAME() lub UserPrincipalName() w Data Analysis Expressions (DAX), dynamiczne tabele RLS służą do filtrowania danych i zapewnienia, że użytkownicy mogą wyświetlać tylko odpowiednie wiersze na podstawie ich atrybutów.
Elastyczność dynamicznego RLS pozwala na łatwiejsze aktualizowanie i utrzymywanie reguł bezpieczeństwa. Aby zmodyfikować logikę zabezpieczeń, administratorzy mogą po prostu dodawać, edytować lub usuwać rekordy w powiązanych tabelach bez konieczności modyfikowania i ponownego publikowania pliku usługi Power BI.
Dynamiczny RLS jest szczególnie przydatny w scenariuszach, w których często zmieniają się atrybuty danych lub prawa dostępu użytkownika. Na przykład, jeśli dane zawierają informacje o sprzedaży dla różnych terytoriów, dynamiczne RLS mogą dynamicznie filtrować dane na podstawie terytorium przydzielonego użytkownikowi, upewniając się, że widzą tylko odpowiednie dane dotyczące sprzedaży.
Implementacja dynamicznych RLS w Power BI wymaga utworzenia tabel przechowujących atrybuty użytkowników i powiązane z nimi uprawnienia dostępu do danych. Relacje między tymi tabelami a tabelami faktów zawierającymi rzeczywiste dane są ustalane w celu umożliwienia odpowiedniego filtrowania.
Wykorzystując dynamiczne RLS, organizacje mogą zapewnić, że użytkownicy zobaczą tylko te dane, które są dla nich istotne, na podstawie ich atrybutów przechowywanych w danych. Zapewnia to elastyczny i wydajny sposób egzekwowania zabezpieczeń na poziomie wierszy w usłudze Power BI, minimalizując ręczną interwencję oraz zachowując poufność i integralność danych.
3.3 Różnica pomiędzy statycznym a dynamicznym RLS w Power BI
Główna różnica między statycznym i dynamicznym RLS w usłudze Power BI polega na sposobie definiowania i aktualizowania logiki zabezpieczeń.
Statyczne zabezpieczenia RLS, znane również jako zabezpieczenia na poziomie wiersza, obejmują zdefiniowanie logiki zabezpieczeń w samym pliku usługi Power BI (.pbix) podczas procesu implementacji zabezpieczeń Power Bi row level security. W pliku tworzone są role z wyrażeniami lub filtrami w celu określenia, do których wierszy danych dany użytkownik ma dostęp. Wszelkie zmiany w logice zabezpieczeń wymagają zmodyfikowania pliku PBIX, zapisania go i ponownego opublikowania. Statyczny RLS zapewnia proste podejście do ochrony danych i jest odpowiedni dla scenariuszy, w których reguły bezpieczeństwa pozostają względnie statyczne.
Z drugiej strony dynamiczne RLS, znane również jako dynamiczne zabezpieczenia na poziomie wiersza, opierają się na definicji zabezpieczeń utworzonej w połączeniu z informacjami o koncie użytkownika przechowywanymi w tabelach danych. Dynamiczne RLS nie obejmuje modyfikowania pliku usługi Power BI pod kątem aktualizacji zabezpieczeń. Zamiast tego do modelu danych ładowane są dodatkowe tabele zawierające informacje logowania użytkownika i powiązane atrybuty danych. Funkcje takie jak USERNAME() lub UserPrincipalName() służą do dynamicznego filtrowania danych na podstawie poświadczeń użytkownika. Zmiany w logice zabezpieczeń w dynamicznym RLS można wprowadzać, dodając, edytując lub usuwając rekordy w powiązanych tabelach. Dynamiczny RLS oferuje większą elastyczność i łatwość konserwacji w porównaniu ze statycznym RLS.
Jeśli chodzi o implementację, statyczne RLS wymagają zmian w samym pliku usługi Power BI, podczas gdy dynamiczne RLS wykorzystują zewnętrzne tabele do określenia zabezpieczeń na poziomie wierszy. Static RLS zapewnia scentralizowane zarządzanie rolami zabezpieczeń, zapewniając spójność między raportami i pulpitami nawigacyjnymi. Jednak aktualizacje logiki zabezpieczeń wymagają zmodyfikowania i ponownego opublikowania pliku PBIX. Z drugiej strony dynamiczne RLS pozwala na łatwiejsze aktualizacje, ponieważ zmiany są wprowadzane bezpośrednio w powiązanych tabelach bez konieczności modyfikowania pliku Power BI.
Zarówno statyczne, jak i dynamiczne RLS umożliwiają organizacjom egzekwowanie kontroli dostępu do danych i ograniczanie widoczności danych na podstawie ról i atrybutów użytkowników. Wybór między statycznym a dynamicznym RLS zależy od konkretnych wymagań organizacji, częstotliwości aktualizacji zabezpieczeń oraz poziomu elastyczności potrzebnej w zarządzaniu regułami bezpieczeństwa. Statyczny RLS oznacza, że definiujemy logikę bezpieczeństwa w postaci ról przypisanych do wyrażenia filtrującego dane w pliku Power BI (.pbix) i dla każdej zmiany logiki musimy otworzyć plik PBIX, zastosować zmianę, zapisać plik i ponownie go opublikować.
Z drugiej strony dynamiczne RLS opiera się na definicji zabezpieczeń utworzonej w powiązaniu z kontem użytkownika w samych danych. Nie brzmi to jeszcze zbyt ciekawie, więc skupmy się na konkretnym przykładzie.
Kiedy osoba X loguje się do systemu, z tabel danych, które są ładowane dodatkowo do modelu, możemy wyczytać, że ta osoba powinna mieć dostęp tylko do konkretnych faktur. W utworzonej przez nas dynamicznej tabeli RLS mamy powiązany login użytkownika z indywidualnymi identyfikatorami faktur. Ta metoda jest możliwa w usłudze Power BI przy użyciu funkcji UserName() lub UserPrincipalName() języka DAX. W dynamicznym RLS więc aby zmienić logikę wystarczy dodać/edytować/usunąć rekordy w tabelach. To wszystko!
Zanim jednak przejdziemy do procesu tworzenia dynamicznych RLS, podsumujmy najpierw – do zdefiniowania dynamicznych RLS i ról bezpieczeństwa potrzebne są: tabela użytkowników z loginem i grupą, do której należą, tabela ról, odpowiednie relacje (tabela użytkowników filtruje rolę table, a ta filtruje fakty tabeli), co najmniej jedną rolę z filtrem języka RLS DAX z funkcjami UserName i UserPrincipalName.
4. Zarządzanie RLS w Power BI
Zarządzanie Row-level security z Power BI (Row security level Power BI) obejmuje skuteczne wdrażanie i utrzymywanie zabezpieczeń na poziomie wiersza w celu kontrolowania dostępu do danych w oparciu o role i atrybuty użytkowników. Dzięki RLS organizacje mogą zapewnić, że użytkownicy widzą tylko te dane, które są dla nich istotne, przy jednoczesnym zachowaniu wysokiego poziomu ochrony i poufności danych.
Rozważmy na przykład scenariusz, w którym raport usługi Power BI zawiera dane dla wielu regionów. Wdrażając RLS, kierownik regionalny może uzyskać dostęp do przeglądania danych specyficznych dla swojego regionu, jednocześnie ograniczając dostęp do danych innych kierowników regionalnych. Takie podejście usprawnia ochronę danych, umożliwiając publikację pojedynczego raportu lub pulpitu nawigacyjnego, którymi można zarządzać i utrzymywać je centralnie, eliminując potrzebę tworzenia wielu raportów z różnymi zestawami danych.
Usługa Power BI zapewnia narzędzia i funkcje niezbędne do efektywnego zarządzania RLS. Administratorzy mogą definiować role zabezpieczeń i powiązane filtry w celu kontrolowania widoczności danych. Usługa Power BI pozwala na scentralizowaną administrację rolami bezpieczeństwa, zapewniając kompleksowy przegląd ról zaimplementowanych w organizacji.
Ponadto RLS Power BI (RLS PBI) oferuje możliwości inspekcji i monitorowania użycia i skuteczności. Pomaga to administratorom śledzić i analizować wzorce dostępu, identyfikować potencjalne luki w zabezpieczeniach i zapewniać zgodność z przepisami o ochronie danych.
Aby skutecznie zarządzać RLS, administratorzy mogą korzystać z zasobów udostępnianych przez firmę Microsoft, takich jak dokumentacja usługi Power BI dotycząca zarządzania RLS. Dokumentacja zawiera wskazówki dotyczące wdrażania RLS (Microsoft RLS), tworzenia ról zabezpieczeń i zarządzania poziomami dostępu na podstawie atrybutów i ról użytkowników.
Wdrażając w Power BI RLS, organizacje mogą egzekwować kontrolę dostępu do danych, zapewnić odpowiedni poziom bezpieczeństwa i zapewnić użytkownikom dostęp do danych, których potrzebują do podejmowania świadomych decyzji przy zachowaniu poufności danych.
Do tak zdefiniowanej roli należy już tylko na portalu przypisać użytkowników (najlepiej grupy domenowe) – od tego momentu użytkownik będący w takiej roli nie zobaczy innych wierszy niż te, które spełniają warunek z roli. Jednak uwaga – uczestnictwo danego użytkownika w więcej niż jednej roli jednocześnie może zakończyć ujawnieniem wszystkich danych! Należy zatem dobrze przetestować raport i założone role.
4.1 Tabela użytkowników
Aby dynamiczne zabezpieczenia na poziomie wiersza działały, należy utworzyć tabelę wszystkich użytkowników. Tabela ta musi zawierać wykaz wszystkich użytkowników z polem będącym ich identyfikatorem logowania do raportu usługi Power BI oraz grupą, do której dany użytkownik należy. Tabela może pochodzić np. z Active Directory czy z listy Sharepoint.
Jeśli raport jest hostowany w usłudze Power BI, identyfikator logowania to adres e-mail, którego użytkownicy używają do logowania się do usługi Power BI. Jeśli raport jest hostowany na serwerze raportów usługi Power BI, identyfikator logowania to konto sieciowe, którego używa się do logowania się do serwera raportów.
Przykładowa tabela:
4.2 Tabela ról:
Następnie przechodzimy do problemu tworzenia ról, dzięki którym można filtrować dane na podstawie grupy użytkownika. Musimy stworzyć tabelę przechowującą wszystkie skojarzenia.
Czasami tabela ról nie jest wymagana. Tabela użytkownika może działać jako tabela ról.
Na przykład, jeśli wdrażamy raport płacowy usługi Power BI, chcemy, aby każdy użytkownik widział tylko swoje dane osobowe.
4.3 Relacje
Teraz musimy połączyć tę tabelę zarówno z tabelą użytkowników, jak i z właściwą tabelą faktów. Ważne jest, aby tabela ról filtrowała inne tabele w modelu danych. Filtrowanie między tabelami w Power BI jest definiowane jako relacja. Musimy mieć relację z odpowiednim kierunkiem do innych tabel z danymi w modelu danych z tabeli ról.
4.4 Filtry DAX
Ostatnim elementem jest powiązanie bieżącego użytkownika z pocztą. Osiąga się to poprzez stworzenie roli:
W tabeli „user” dodajemy następujące wyrażenie DAX (username() pobiera credentials logującego się użytkownika):
Po opublikowaniu raportu otwieramy menu zabezpieczeń danego zbioru danych.
Na tym etapie musimy połączyć rolę utworzoną w Power BI Desktop z użytkownikami usługi powerbi.com. Klikamy Add i Save.
Podsumowując, co nastąpi: dane logowania użytkownika przefiltrują tabelę użytkowników, ta z kolei tabelę ról, co z kolei odfiltruje odpowiednie dane w tabeli faktów:
Osoba 1:
Osoba 2:
Rozważ TTMS jako swojego zaufanego partnera w Power BI
Rozważ Transition Technologies MS (TTMS) jako swojego zaufanego partnera w usłudze Power BI. TTMS jest renomowanym dostawcą rozwiązań technologicznych, posiadającym duże doświadczenie w Power BI i zarządzaniu danymi. Dzięki udokumentowanej historii udanych projektów, TTMS zdobył zaufanie klientów na całym świecie.
TTMS ściśle współpracuje z firmą Microsoft, zapewniając dogłębne zrozumienie usługi Power BI i jej zaawansowanych funkcji, w tym implementacji zabezpieczeń na poziomie wiersza (RLS). Jako partner Microsoft, TTMS jest na bieżąco z najnowszymi osiągnięciami w Power BI, zapewniając klientom najnowocześniejsze rozwiązania spełniające ich specyficzne potrzeby.
Wybierając TTMS jako swojego dostawcę Webcon dla Power BI, korzystasz z ich bogatego doświadczenia i wiedzy dziedzinowej. TTMS oferuje dedykowany zespół Webcon, który specjalizuje się we wdrażaniu bezpiecznych i wydajnych rozwiązań Power BI, w tym RLS. Zespół Webcon ściśle współpracuje z klientami, aby zrozumieć ich wymagania i zaprojektować rozwiązania dostosowane do ich unikalnych wyzwań.
TTMS zapewnia szeroki zakres usług wspierających Twoją podróż do usługi Power BI, od początkowej implementacji po bieżące wsparcie i konserwację. Ich usługi obejmują modelowanie danych, projektowanie raportów, wdrażanie RLS i zarządzanie rolami bezpieczeństwa. Dzięki doświadczeniu TTMS w zakresie usług Power BI (wchodzi w to również wdrożenie Power BI RLS) możesz zapewnić bezproblemową integrację zabezpieczeń na poziomie wiersza w projektach usługi Power BI.
Aby dowiedzieć się więcej o usługach Power BI firmy TTMS, odwiedź ich stronę usług, na której możesz zapoznać się z ich ofertami, w tym usługami zarządzanymi Power BI. Usługi zarządzane Power BI TTMS zapewniają kompleksowe wsparcie, zapewniając płynne działanie środowiska Power BI, w tym zarządzanie RLS, nadzór nad danymi i optymalizację wydajności.
Wybierz TTMS jako zaufanego partnera w zakresie usługi Power BI, a skorzystasz z ich głębokiej wiedzy specjalistycznej, współpracy z firmą Microsoft, dedykowanego zespołu Webcon i kompleksowych usług. Zaufaj TTMS, aby dostarczać bezpieczne, wydajne i dostosowane rozwiązania Power BI, które pomogą Ci uwolnić pełny potencjał Twoich danych.
Końcowe przemyślenia
Podsumowując, Power BI to potężne narzędzie do analizy biznesowej, które umożliwia organizacjom przekształcanie danych w praktyczne spostrzeżenia. Dzięki intuicyjnemu interfejsowi, zaawansowanym funkcjom analitycznym i usługom w chmurze usługa Power BI oferuje kompleksowe rozwiązanie do wizualizacji i analizy danych. Zaangażowanie platformy w bezpieczeństwo jest widoczne dzięki funkcjom takim jak Row-Level Security (RLS), które umożliwiają organizacjom kontrolowanie dostępu do danych w oparciu o role i obowiązki użytkowników. Niezależnie od tego, czy są to statyczne RLS, które definiują logikę zabezpieczeń w pliku usługi Power BI, czy dynamiczne RLS, które wykorzystują atrybuty użytkowników przechowywane w danych, organizacje mogą egzekwować szczegółowe środki bezpieczeństwa. Zarządzanie RLS w Power BI gwarantuje, że użytkownicy mają dostęp tylko do istotnych danych, promując poufność i integralność danych. Co więcej, partnerstwo z Transition Technologies MS (TTMS), zaufanym dostawcą posiadającym doświadczenie we wdrażaniu Power BI i RLS, oferuje organizacjom niezawodne rozwiązanie. TTMS ściśle współpracuje z firmą Microsoft, dostarczając najnowocześniejsze rozwiązania i dedykowany zespół Webcon, który spełnia określone wymagania. Dzięki szerokiej gamie usług TTMS, w tym usługom zarządzanym Power BI, organizacje mogą skutecznie zarządzać RLS i odblokować pełny potencjał usługi Power BI w swojej podróży opartej na danych.
Łukasz Błaszczyk – BI Developer w Transition Technologies MS