Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir:✅ Müşterileriniz için Power BI tümleşik analizi (App-owns-data)
Bu makale, OLS kullanan Power BI içeriğini, Power BI App owns data (müşterileriniz için gömme) senaryosunda nasıl gömeceğinizi açıklar.
Bu senaryoda, ISV'nin rapor müşterilerinden gizlemek istediği hassas verileri ve meta verileri içeren bir tablosu vardır.
OLS hakkında daha fazla bilgi için Nesne düzeyi güvenlik (OLS) bölümüne gidin.
Önkoşullar
Bu makalede OLS kullanan bir raporunuz olduğu ve bunu bir uygulamaya eklemek istediğiniz varsayılır. OLS kullanan bir rapor oluşturmak için bkz. Nesne düzeyi güvenlik (OLS).
Rapor aşağıdaki modellerden herhangi biri kullanılarak oluşturulabilir:
- Cloud OLS
- OLS rolleri ile Azure Analysis Services'e canlı bağlantılı rapor
- OLS rolleri ile SQL Server Analysis Services'e canlı bağlı rapor
Nesne düzeyinde güvenlik kullanan bir rapor ekleme
OLS kullanan öğeler için ekleme belirteçleri oluşturma işlemi statik RLS ile aynıdır. Rol ve kullanıcı adına ihtiyacınız vardır.
Eklemek istediğiniz rapor aşağıdaki senaryolardan birini kullanıyorsa bazı ek adımlar uygulamanız gerekebilir:
- Cloud OLS belirteci oluşturma
- SQL Server Analysis Services (SSAS) belirteci oluşturma
- Microsoft Entra ID belirteci oluşturma
Aşağıdaki örnekte OLS kullanarak hassas bilgiler içeren bir tabloyu gizlemek için nasıl belirteç oluşturulacağı gösterilmektedir:
public EmbedToken GetEmbedToken(Guid reportId, IList<Guid> datasetIds, [Optional] Guid targetWorkspaceId)
{
PowerBIClient pbiClient = this.GetPowerBIClient();
// Defines the user identity and roles.
var olsIdentity = new EffectiveIdentity(
username: "All",
roles: new List<string>{ "SensitiveTableOLS" }, // Role created to hide a table that has sensitive information
datasets: new List<string>{ datasetId.ToString()}
);
// Create a request for getting an embed token for the OLS identity defined above
var tokenRequest = new GenerateTokenRequestV2(
reports: new List<GenerateTokenRequestV2Report>() { new GenerateTokenRequestV2Report(reportId) },
datasets: datasetIds.Select(datasetId => new GenerateTokenRequestV2Dataset(datasetId.ToString())).ToList(),
targetWorkspaces: targetWorkspaceId != Guid.Empty ? new List<GenerateTokenRequestV2TargetWorkspace>() { new GenerateTokenRequestV2TargetWorkspace(targetWorkspaceId) } : null,
identities: new List<EffectiveIdentity> { olsIdentity }
);
// Generate an embed token
var embedToken = pbiClient.EmbedToken.GenerateToken(tokenRequest);
return embedToken;
}
Dikkat edilecekler ve sınırlamalar
Bkz. OLS modelleri için kısıtlamalar.
İlgili içerik
Azure Analysis Services'da nesne düzeyinde güvenlik
Başka sorunuz var mı? Power BI Topluluğu sormayı deneyin.