Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:✅ Analiza osadzona Power BI dla swoich klientów (App-owns-data)
W tym artykule wyjaśniono, jak osadzić raport podzielony na strony, który korzysta z RLS (zabezpieczenia na poziomie wiersza), w aplikacji app owns data.
Uwaga
Ten artykuł dotyczy tylko klientów korzystających z danych własnych przez aplikację.
Aby używać RLS dla raportów podzielonych na strony:
- Konfigurowanie środowiska do filtrowania raportu
- Filtrowanie danych na poziomie raportu lub zapytania
- Przekazywanie skonfigurowanego parametru przy użyciu tokenu osadzania
Wymagania wstępne
W tym artykule zakłada się, że wiesz, jak osadzić stronicowany raport usługi Power BI. Wyjaśniono w nim, jak wygenerować token osadzania, aby raport pokazywał tylko uprawnienia dostępu użytkownika.
Raporty stronicowane są tworzone przy użyciu mechanizmu SQL Server Reporting Services, a nie mechanizmu Power BI (Analysis Services), więc filtrowanie RLS konfiguruje się w Power BI Report Builder.
Konfigurowanie środowiska
Aby zastosować zabezpieczenia na poziomie wiersza do raportu podzielonego na strony usługi Power BI, użyj wbudowanego pola UserID , aby przypisać parametr. Ten parametr służy do filtrowania lub wykonywania zapytań dotyczących danych.
Następnie przekaż UserID do interfejsu API Embed Token - Generate Token, aby uzyskać token osadzania.
Użyj identyfikatora UserID jako filtru na poziomie raportu lub zapytania
Możesz użyć UserId jako filtru lub w zapytaniu do źródła danych.
Filtrowanie danych
W oknie Właściwości modelu semantycznego w okienku po lewej stronie wybierz pozycję Filtr.
Z menu rozwijanego Wyrażenie wybierz parametr, którego chcesz użyć do filtrowania danych.
Wybierz przycisk funkcji Value.
W oknie „Wyrażenie”, z listy „Kategoria” wybierz pozycję „Pola wbudowane”.
Z listy Element wybierz pozycję UserID i wybierz przycisk OK.
W oknie Właściwości modelu semantycznego sprawdź, czy wyrażenie jest wybranym parametrem = UserID, a następnie wybierz przycisk OK.
Korzystanie z zapytania
W oknie Właściwości modelu semantycznego w okienku nawigacji po lewej stronie wybierz pozycję Parametry i wybierz pozycję Dodaj.
W polu Nazwa parametru wprowadź @UserID, a w polu Wartość parametru dodaj [&UserID].
W okienku po lewej stronie wybierz pozycję Zapytanie, w zapytaniu dodaj parametr UserID jako część zapytania, a następnie wybierz przycisk OK.
Uwaga
Na poniższym zrzucie ekranu parametr koloru jest używany jako przykład (WHERE FinalTable.Color = @UserID). W razie potrzeby możesz utworzyć bardziej złożone zapytanie.
Wygeneruj token osadzania
Podczas osadzania raportu stronicowanego dla klientów użyj interfejsu API Reports GenerateTokenInGroup, aby uzyskać token osadzenia. Ten token może również służyć do filtrowania niektórych danych z raportu podzielonego na strony.
Token można wygenerować tylko przy użyciu nazwy głównej usługi. Nie można wygenerować tokenu jako użytkownika głównego. Jednostka usługi musi mieć co najmniej uprawnienia członka do obszaru roboczego w usługa Power BI. (Jeśli jednostka usługi jest Współautorem lub Czytelnikiem, nie może wygenerować tokenu).
Aby wygenerować token, przypisz username pole z informacjami, które chcesz wyświetlić. Na przykład w raporcie podzielonym na strony, który ma parametr koloru, jeśli wprowadzisz zielony w username polu, token osadzania ogranicza osadzone dane tylko do danych, które mają kolor zielony jako jego wartość w kolumnie kolorów.
{
"reports": [
{
"id": "8d57615e-cfed-4d60-bd21-7dc05727193c"
}
],
"identities": [
{
"username": "green",
"reports": [
"8d57615e-cfed-4d60-bd21-7dc05727193c"
]
}
]
}
Uwaga
Jeśli wygenerujesz token osadzania bez określenia identyfikatora użytkownika, zostanie użyty identyfikator obiektu jednostki usługi.
Rozważania i ograniczenia
- Użytkownik nadrzędny nie jest obsługiwany w przypadku raportów stronicowanych na potrzeby osadzania dla swoich klientów. Użytkownik główny jest obsługiwany w przypadku osadzania w organizacji.
- Jednostka usługi musi mieć uprawnienia w obszarze roboczym na poziomie co najmniej członek (a nie przeglądający lub współautor).