Implementowanie zabezpieczeń na poziomie wiersza w osadzonych raportach podzielonych na strony
DOTYCZY: Aplikacja jest właścicielem danych Użytkownik jest właścicielem danych
W tym artykule wyjaśniono, jak osadzić raport podzielony na strony, który korzysta z zabezpieczeń na poziomie wiersza (zabezpieczenia na poziomie wiersza) w aplikacji będącej właścicielem aplikacji danych.
Uwaga
Ten artykuł dotyczy tylko klientów korzystających z danych własnych przez aplikację.
Aby użyć zabezpieczeń na poziomie wiersza 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 założono, że wiesz, jak osadzić raport podzielony na strony usługi Power BI. Wyjaśniono w nim, jak wygenerować token osadzania, aby raport pokazywał tylko uprawnienia dostępu użytkownika.
Raporty podzielone na strony są tworzone przy użyciu aparatu usług SQL Server Reporting Services, a nie aparatu usług Power BI (Analysis Services), więc filtrowanie zabezpieczeń na poziomie wiersza jest konfigurowane w programie 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ż identyfikator UserID do tokenu osadzania — generowanie interfejsu API tokenu , aby uzyskać token osadzania.
Użyj identyfikatora UserID jako filtru na poziomie raportu lub zapytania
Identyfikator UserId można użyć jako filtru lub zapytania 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 Funkcja 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.
Generowanie tokenu osadzania
Podczas osadzania raportu podzielonego na strony dla klientów użyj interfejsu API GenerateTokenInGroup raportów, aby uzyskać token osadzania. 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 jednostki 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 przeglądarką, 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 główny nie jest obsługiwany w przypadku raportów podzielonych na strony na potrzeby osadzania dla klientów. Użytkownik główny jest obsługiwany w przypadku osadzania w organizacji.
- Jednostka usługi musi mieć uprawnienia obszaru roboczego co najmniej członka lub (nie osoba przeglądająca lub współautora).