Eklenen sayfalandırılmış raporlarda satır düzeyinde güvenlik uygulamaImplementing row-level security in embedded paginated reports

Eklediğiniz sayfalandırılmış raporda görüntülenecek verileri denetleyebilirsiniz.When you embed a paginated report, you can control which data is displayed. Bu sayede görüntülenen bilgileri kullanıcıya göre biçimlendirebilirsiniz.This allows tailoring the displayed information per user. Örneğin küresel satış sonuçlarını içeren bir Power BI sayfalandırılmış raporunuz varsa bunu yalnızca belirli bir bölgeye ait satış sonuçlarını gösterecek şekilde ekleyebilirsiniz.For example, if you have a Power BI paginated report that includes global sale results, you can embed it so that only the sale results from a certain region are available.

Bu özellik sayesinde verilerin bir alt kümesini görüntüleyebilir, geri kalanının güvenliğini tehlikeye atmamış olursunuz.This feature provides a secure way of displaying a subset of the data, in a way that doesn't compromise the rest of data. Bu açıdan Power BI raporlarında (sayfalandırılmış olmayan), panolarında, kutucuklarında ve veri kümelerinde verilerin güvenli bir şekilde görüntülenmesini sağlayan Satır Düzeyi Güvenlik (RLS) özelliğine benzer.It resembles the Row Level Security (RLS) feature, which provides a secure way of displaying data in Power BI reports (that are not paginated), dashboards, tiles, and datasets.

Not

Bu özellik, müşteriler için eklenen sayfalandırılmış raporlarla birlikte çalışır.This feature works with embedding paginated reports for customers.

Veri kümesini filtrelemek için bir parametre yapılandırmaConfiguring a parameter to filter the dataset

Bir Power BI sayfalandırılmış raporuna satır düzeyi güvenlik uygulamak için UserID özniteliğine bir parametre atamanız gerekir.When applying row-level security to a Power BI paginated report, you need to assign a parameter to the UserID attribute. Bu parametre, rapor eklenmeden önce veri kümesinden çekilen verileri kısıtlar.This parameter will restrict the data pulled from the dataset, before the report is embedded.

Parametreyi UserID özniteliğine atadıktan sonra Reports GenerateTokenInGroup API’sini kullanarak ekleme belirtecini alabilirsiniz.After assigning the parameter to UserID, use the Reports GenerateTokenInGroup API to get the embed token.

UserID özniteliğini rapor veya sorgu düzeyinde filtre olarak kullanmaUse UserID as a filter at report or query level

UserId özniteliğini Power BI Report Builder'da veri kaynağı için bir filtre veya sorgu olarak kullanabilirsiniz.You can use UserId as a filter or in a query to the datasource in Power BI Report Builder.

Filtreyi kullanmaUsing the filter

  1. Veri Kümesi Özellikleri penceresinde soldaki bölmeden Filtre'yi seçin.In the Dataset Properties window, from the left pane, select Filter.

    Power BI Rapor Oluşturucusu filtresi

  2. İfade açılan menüsünden verileri filtrelemek için kullanmak istediğiniz parametreyi seçin.From the Expression dropdown menu, select the parameter you want to use for filtering the data.

    İfade menüsünden seçilen Renk değerini gösteren ekran görüntüsü.

  3. Değer işlev düğmesine tıklayın.Click the Value function button.

    Power BI Rapor Oluşturucusu değeri

  4. İfade penceresindeki Kategori listesinden Yerleşik Alanlar'ı seçin.In the Expression window, from the Category list, select Built-in Fields.

    Kategori olarak Yerleşik Alanlar, Öğe olarak Yürütme Süresinin seçili olduğu İfade penceresini gösteren ekran görüntüsü.

  5. Öğe listesinden UserID değerini seçip Tamam'a tıklayın.From the Item list, select UserID and click OK.

    Power BI Rapor Oluşturucusu UserID

  6. Veri Kümesi Özellikleri penceresinde ifadenin seçtiğiniz parametre = UserID olduğunu doğrulayın ve Tamam'a tıklayın.In the Dataset Properties window, verify that the expression is your selected parameter = UserID, and click OK.

    Power BI Rapor Oluşturucusu veri kümesi özellikleri

Sorgu kullanmaUsing a query

  1. Veri Kümesi Özellikleri penceresinde soldaki bölmeden Parametreler'i seçin ve Ekle'ye tıklayın.In the Dataset Properties window, from the left pane, select Parameters and click Add.

    Power BI Rapor Oluşturucusu parametreleri

  2. Parametre Adı alanına @UserID girin, Parametre Değeri alanına ise [&UserID] ekleyin.In the Parameter Name enter @UserID, and in the Parameter Value add [&UserID].

    Power BI Rapor Oluşturucusu parametre adı

  3. Soldaki bölmeden Sorgu'yu seçin ve Sorgu bölmesinde UserID parametresini sorgunuza ekleyip Tamam'a tıklayın.From the left pane, select Query, in the Query add the UserID parameter as part of your query, and click OK.

    Not

    Aşağıdaki ekran görüntüsünde renk parametresi örnek olarak kullanılmıştır (whereFinalTable.Color = @UserID).In the screenshot below the color parameter is used as an example (whereFinalTable.Color = @UserID). Gerekirse daha karmaşık bir sorgu oluşturabilirsiniz.If needed, it is possible to create a more complex query.

    Power BI Rapor Oluşturucusu sorgu düzenleme

Ekleme belirtecini kullanarak yapılandırılan parametreyi geçirmePassing the configured parameter using the embed token

Müşterileriniz için bir sayfalandırılmış rapor eklerken, ekleme belirtecini almak için Reports GenerateTokenInGroup API’si kullanılır.When embedding a paginated report for your customers, the Reports GenerateTokenInGroup API is used to get the embed token. Bu belirteç, sayfalandırılmış rapordan alınan verilerin bir bölümünü filtrelemek için de kullanılabilir.This token can also be used to filter some of the data that is pulled out of the paginated report.

Verilerin yalnızca bir bölümünü kullanıma sunmak için username alanına görüntülenmesini istediğiniz bilgileri atayın.To expose only some of the data, assign the username field with the information you want to be displayed. Örneğin renk parametresine sahip olan bir sayfalandırılmış raporda username alanına yeşil yazmanız durumunda ekleme belirteci eklenen verileri yalnızca renk sütununda yeşil değerine sahip olan verileri görüntüleyecek şekilde kısıtlar.For example, in a paginated report that has a color parameter, if you enter green in the username field, the embed token will restrict the embedded data to display only the data that has the green value in the color column.

{
    "accessLevel": "View",
    "reportId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
    "identities": [
            {
                    // Replace the 'username' with a paginated report parameter
                    "username":     "...",
                    "reports: [
                        "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
                    ]
            }
    ]
}