Merhaba herkese,
Önceki postlarımda Power BI Desktop’da farklı kaynaklardan veri aktarımı yapıp görsel bir rapor hazırladım. Şimdi bu raporun bazı kişiler tarafından görülüp bazılar tarafından görülmesini istemiyorum. Sadece belirlediğim roller benim raporuma ulaşsın istiyorum. Bu gibi durumlarda sahneye RLS çıkıyor. RLS, row-level security yani satır düzeyi güvenlik ile veri erişimine kısıtlama getirebiliyorum. Ben Power BI desktop raporu için kısıtlama getireceğim ancak bu raporu DirectQuery ile bağlandığınız SQL Server raporlarına da kısıtlama getirebilirsiniz. Bunun için önce rolleri tanımlamam gerekir. İzlemem gereken yol;
Power BI Desktop Tab Menu> Modelleme > Rolleri Yönet
Rolleri yönetmek için NorthwindDB‘yi Power BI’da açıyorum ve Orders Tablosundan KOENE isimli Alman müşterilerin siparişlerine bakıyorum yani aslında filtre koyuyorum ve yeni bir rol oluşturuyorum. Bu role de “Almanlar” adını veriyorum.
Almanlar rolünün raporda ne göreceğini kontrol etmek amaçlı “Rol olarak görüntüle” diyorum ve Almanları seçiyorum. Burada “Diğer Kullanıcı”ya kıısıtlamak istediğim kişinin mailini yazarak o kullanıcıyı kısıtlamış oluyorum.
Sipariş tablosunda sadece Alman KOENE firmasının siparişlerini görüyorum. “Görüntülemeyi durdur” dediğimde tablo eski haline gelecek.
Bu şekilde raporun belirli kısımlarını belirli kişilere yada rollere görünür kılıp kısıtlama getirebilirsiniz. Tanımladığınız rolleri Power BI Service’de ilgili raporun datasetinin Güvenliğine gelip rollere ait kişileri atamanız gerekmektedir.
Bu örneği GitHub‘dan indirebilirsiniz.
Meltem Hanım Merhaba,
bu konuda merak ettiğim bir husus var.Rol level security yaptığımızda powerbi.com’da kullanıcıya designer yetkisi yada buton olarak düzenle butonunu açamıyoruz.Düzenleme butonunu açtığımızda row level security çalışmıyor.
Örnek olarak Alman Koneo firmasının sadece siparişlerini gösterip düzenle butonunu açabilirmiyiz?Yada bu işlemi nasıl yapabiliriz? kullanıcıya hem rapordaki alanları değiştirme yetkisi verip aynı zamanda kayıt düzeyinde yetkilendirme uygulayamak istiyoruz.
LikeLike
Sinan Bey merhaba,
RLS ile sadece veriye erişim kısıtı sağlayabilirsiniz. Erişimi kısıtladığınız veri üzerinde o rolün veriyi modellemesine izin verilmiyor. Dolayısıyla yetki tanımlayamazsınız. Bu nedenle sizin de dediğiniz gibi ya RLS ya da yetki devre dışı kalıyor.
LikeLike