Power BI ile satır düzeyi güvenlik (RLS)

Power BI ile satır düzeyi güvenlik (RLS), belirli kullanıcıların veri erişimini kısıtlamak için kullanılabilir. Filtreler, veri erişimini satır düzeyinde sınırlar ve rollerin içinde filtre tanımlayabilirsiniz. Power BI hizmetinde bir çalışma alanının üyeleri, o çalışma alanındaki veri kümelerine erişebilir. RLS bu veri erişimini kısıtlamaz.

Power BI Desktop ile Power BI'a aktarılan veri modelleri için RLS'yi yapılandırabilirsiniz. Ayrıca DirectQuery'yi kullanan SQL Server gibi veri kümelerinde de RLS'yi yapılandırabilirsiniz. Analysis Services veya Azure Analysis Services canlı bağlantıları için, Satır düzeyi güvenliği Power BI Desktop yerine modelde yapılandırırsınız. Güvenlik seçeneği, canlı bağlantı veri kümeleri için gösterilmez.

Power BI Desktop'ta rol ve kural tanımlama

Power BI Desktop'ta rol ve kural tanımlayabilirsiniz. İçeriğinizi Power BI'da yayımladığınızda rol tanımları da yayımlanır.

Güvenlik rollerini tanımlamak için şu adımları izleyin.

  1. Verilerinizi Power BI Desktop raporunuza aktarın veya bir DirectQuery bağlantısı yapılandırın.

    Not

    Analysis Services için Power BI Desktop canlı bağlantılarında rol tanımlayamazsınız. Bu işlemi Analysis Services modelinin içinde yapmanız gerekir.

  2. Modelleme sekmesinde Rolleri Yönet'i seçin.

    Rolleri Yönet’i seçin

  3. Rolleri Yönet penceresinde Oluştur'u seçin.

    Oluştur’u seçin

  4. Roller bölümünde rol için bir ad girin.

  5. Tablolar bölümünde DAX kuralı uygulamak istediğiniz tabloyu seçin.

  6. Tablo filtresi DAX ifadesi kutusuna DAX ifadelerini girin. Bu ifade true veya false değerini döndürür. Örneğin: [Entity ID] = “Value”.

    Rolleri yönet penceresi

    Not

    Bu ifadede username() parametresini kullanabilirsiniz. username() parametresinin Power BI Desktop'ta ETKİALANI\kullanıcıadı biçiminde olduğunu unutmayın. Power BI hizmetinde ve Power BI Rapor Sunucusu'nda, kullanıcının Kullanıcı Asıl Adı (UPN) biçimindedir. Alternatif olarak kullanıcıyı her zaman kullanıcı asıl adı biçiminde (kullanıcıadı@contoso.com) döndüren userprincipalname() işlevini kullanabilirsiniz.

  7. DAX ifadesini oluşturduktan sonra ifadeyi doğrulamak için ifade kutusunun üstündeki onay işaretini seçin.

    DAX ifadesini doğrulama

    Not

    Bu ifade kutusunda, normalde noktalı virgül ayırıcıları kullanan bir yerel ayar (ör. Fransızca veya Almanca) kullanıyor olsanız bile DAX işlevi bağımsız değişkenlerini ayırmak için virgül kullanırsınız.

  8. Kaydet'i seçin.

Power BI Desktop'ta kullanıcıları bir role atayamazsınız. Onları Power BI hizmetinde atarsınız. username() veya userprincipalname() DAX işlevlerini kullanarak ve ilişkileri doğru şekilde yapılandırarak Power BI Desktop'ta dinamik güvenliği etkinleştirebilirsiniz.

Varsayılan olarak, ilişkilerin tek yönlü veya çift yönlü olarak ayarlanmış olması fark etmeksizin satır düzeyi güvenlik filtrelemesi için tek yönlü filtreler kullanılır. İlişkiyi seçip Güvenlik filtrelerini her iki yönde de uygula onay kutusunu işaretleyerek, satır düzeyi güvenlik için çift yönlü çapraz filtrelemeyi kendiniz etkinleştirebilirsiniz. Sunucu düzeyinde dinamik satır düzeyi güvenlik de uyguladıysanız (satır düzeyi güvenlik, kullanıcı adına veya oturum açma kimliğine göre yapıldığında) bu seçeneği belirleyin.

Daha fazla bilgi için Power BI Desktop'ta DirectQuery'yi kullanarak çift yönlü çapraz filtreleme makalesine ve Securing the Tabular BI Semantic Model (Tablolu BI Anlam Modelinin Güvenliğini Sağlama) başlıklı teknik makaleye bakın.

Güvenlik Filtresi uygulama

Power BI Desktop'ta rolleri doğrulama

Rollerinizi oluşturduktan sonra rol sonuçlarını Power BI Desktop'ta test edin.

  1. Modelleme sekmesinde, Farklı görüntüle' yi seçin.

    Rol olarak görüntüle'yi seçin

    Oluşturduğunuz rollerin yer aldığı Rol olarak görüntüle penceresi açılır.

    Rol olarak görüntüle penceresi

  2. Oluşturduğunuz rollerden birini seçin ve ardından Tamam'ı seçerek bu rolü uygulayın.

    Rapor seçilen rolle ilgili verileri işler.

  3. Diğer kullanıcı’yı seçebilir ve bir kullanıcı belirtebilirsiniz.

    Diğer kullanıcı'yı seçin

    En iyisi Kullanıcı Asıl Adını (UPN) sağlamaktır çünkü Power BI hizmeti ve Power BI Rapor Sunucusu bunu kullanır.

    Power BI Desktop'ta, Diğer kullanıcı ancak DAX ifadelerinize göre dinamik güvenlik kullandığınızda farklı sonuçlar gösterir.

  4. Tamam’ı seçin.

    Raporlar kullanıcının görebileceği içerikle oluşturulur.

Artık Power BI Desktop rollerinin doğrulanmasını tamamladıktan sonra, devam edin ve raporunuzu Power BI hizmeti yayımlayın.

Modelinizde güvenliği yönetme

Veri modelinizdeki güvenliği yönetmek için, raporunuzu Power BI hizmeti kaydettiğiniz çalışma alanını açın ve aşağıdaki adımları uygulayın:

  1. Power BI hizmetinde, bir veri kümesi için Diğer seçenekler menüsünü seçin. Bu menü, gezinti menüsünden veya çalışma alanı sayfasından seçmeniz fark etmeksizin bir veri kümesi adının üzerine geldiğinizde görüntülenir.

    Çalışma alanındaki Diğer seçenekler menüsü

    Gezinti menüsündeki Diğer seçenekler menüsü

  2. Güvenlik’i seçin.

    Diğer seçenekler menüsünden Güvenlik’i seçin

Güvenlik, size Power BI Desktop oluşturduğunuz bir role üye eklediğiniz Role-Level Güvenlik sayfasına götürür. Güvenliği yalnızca veri kümesinin sahipleri görebilir. Veri kümesi bir Grupta yer alıyorsa yalnızca grup yöneticileri güvenlik seçeneğini görür.

Power BI Desktop'ta yalnızca rol oluşturabilir veya rolleri değiştirebilirsiniz.

Üyelerle çalışma

Üye ekleme

Power BI hizmeti, e-posta adresini veya Kullanıcı veya güvenlik grubunun adını yazarak role üye ekleyebilirsiniz. Power BI’da oluşturulan Grupları ekleyemezsiniz. Kuruluşunuzun dışından üyeler ekleyebilirsiniz.

Satır düzeyi güvenliği ayarlamak için aşağıdaki grupları kullanabilirsiniz.

  • Dağıtım grubu
  • Posta etkin grup
  • Güvenlik grubu

Ancak, Office 365 gruplarının desteklenmediğini ve rollere eklenemediğini unutmayın.

Üye ekleme

Rol adının veya Üyeler'in yanında parantez içinde gösterilen sayıya bakarak role kaç üyenin dahil olduğunu da görebilirsiniz.

Roldeki üyeler

Üyeleri kaldırma

Üye adlarının yanındaki X işaretlerini seçerek üyeleri kaldırabilirsiniz.

Üyeyi kaldırma

Power BI hizmetinde rolü doğrulama

Rolü test ederek tanımladığınız rolün Power BI hizmeti doğru şekilde çalıştığını doğrulayabilirsiniz.

  1. Rolün yanındaki Diğer seçenekler (...) düğmesini seçin.
  2. Verileri role göre test et seçeneğini belirleyin

Role göre test et

Bu rol için kullanılabilen raporları görürsünüz. Panolar bu görünümde gösterilmez. Sayfa üst bilgisinde, uygulanmakta olan rol gösterilir.

Artık  olarak görüntüleniyor

Şu anda şu kişi olarak görüntülüyorsunuz seçeneğini belirleyerek diğer rolleri veya rol birleşimlerini test edin.

Diğer rolleri test etme

Verileri belirli bir kullanıcı olarak görüntülemeyi tercih edebilir veya kullanılabilir rollerin bir birleşimini seçerek çalışıp çalışmadıklarını doğrulayabilirsiniz.

Normal görüntülemeye geri dönmek için Satır Düzeyi Güvenliğe Geri Dön seçeneğini belirleyin.

username() veya userprincipalname() DAX işlevini kullanma

Veri kümenizde username() veya userprincipalname() DAX işlevlerinden yararlanabilirsiniz. Bunları Power BI Desktop'taki ifadelerde kullanabilirsiniz. Yayımladığınız model Power BI hizmetinde kullanılır.

Power BI Desktop'ta username() , ETKİALANI\Kullanıcı biçiminde bir kullanıcı; userprincipalname() ise user@contoso.com biçiminde bir kullanıcı döndürür.

Power BI hizmetinde, username() ve userprincipalname() işlevlerinin her ikisi de kullanıcının Kullanıcı Asıl Adını (UPN) döndürür. Bu, bir e-posta adresine benzer.

Power BI'da çalışma alanlarıyla RLS'yi kullanma

Power BI Desktop raporunuzu Power BI hizmeti Yeni bir çalışma alanı deneyimiyle YAYıMLARSANıZ, RLS rolleri çalışma alanındaki Görüntüleyici rolüne atanan üyelere uygulanır. Izleyicilere veri kümesine yapı izinleri VERILSE de RLS hala geçerlidir. Örneğin, derleme izinleri bulunan görüntüleyiciler Excel 'de çözümle' yi kullanıyorsa, VERILERIN görünümü RLS tarafından korunur. Yönetici, üye veya katkıda bulunan üyelerine atanan çalışma alanı üyeleri, veri kümesi için düzenleme IZNINE sahiptir ve bu nedenle, RLS bunlara uygulanmaz. RLS 'nin bir çalışma alanındaki kişilere uygulanmasını istiyorsanız, bu kullanıcılara yalnızca Görüntüleyici rolünü atayabilirsiniz. Yeni çalışma alanlarındaki roller hakkında daha fazla bilgi edinin.

Uyarı

Üyelerin düzenleme izinleri olması için Klasik bir çalışma alanı YAPıLANDıRDıYSANıZ, RLS rolleri bunlara uygulanmaz. Kullanıcılar verilerin tamamını görüntüleyebilir. Klasik çalışma alanlarıhakkında daha fazla bilgi edinin.

Grup ayarları

Sınırlamalar

Bulut modellerindeki satır düzeyi güvenlik hakkındaki geçerli sınırlamalar şunlardır:

  • Power BI hizmetinde tanımlanmış olduğunuz roller ve kurallar varsa bunları Power BI Desktop'ta tekrar oluşturmanız gerekir.

  • RLS özelliğini yalnızca Power BI Desktop ile oluşturulan veri kümelerinde tanımlayabilirsiniz. RLS özelliğini Excel ile oluşturulmuş olan veri kümeleri için etkinleştirmek isterseniz öncelikle dosyalarınızı Power BI Desktop (PBIX) biçimine dönüştürmeniz gerekir. Daha fazla bilgi.

  • Yalnızca İçeri Aktarma ve DirectQuery bağlantıları desteklenir. Analysis Services canlı bağlantıları şirket içi modelde işlenir.

Bilinen sorunlar

Bilinen sorunların biri, önceden yayımlanmış olan bir raporu Power BI Desktop uygulamasından yayımlamaya çalıştığınızda ortaya çıkan hata iletisidir. Senaryo aşağıdaki gibidir:

  1. Anna, Power BI hizmetinde yayımlanmış ve RLS yapılandırması yapılmış bir veri kümesine sahiptir.

  2. Anna raporu Power BI Desktop uygulamasında güncelleştirip tekrar yayımlar.

  3. Anna bir hata alır.

Geçici çözüm: Bu sorun giderilene kadar Power BI Desktop dosyasını Power BI hizmetinden yayımlayın. Bu işlemi, Veri Al > Dosyalar adımlarını izleyerek yapabilirsiniz.

SSS

Soru: Power BI hizmetindeki bir veri kümesi için önceden roller ve kurallar oluşturduysam ne yapmam gerekir? Herhangi bir işlem yapmasam da bunlar çalışmaya devam eder mi?
Cevap: Hayır. Görseller düzgün şekilde oluşturulmaz. Rolleri ve kuralları Power BI Desktop uygulamasında tekrar oluşturmanız ve Power BI hizmetinde yayımlamanız gerekir.

Soru: Bu rolleri Analysis Services veri kaynakları için oluşturabilir miyim?
Cevap: Verileri Power BI Desktop'a aktardıysanız oluşturabilirsiniz. Canlı bağlantı kullanıyorsanız Power BI hizmetinden RLS yapılandırması gerçekleştiremezsiniz. Bu yapılandırma şirket içi Analysis Services modelinde tanımlanır.

Soru: Kullanıcılarımın erişebileceği sütunları veya ölçüleri sınırlamak için RLS kullanabilir miyim?
Cevap: Hayır. Belirli bir veri satırına erişimi olan kullanıcılar, ilgili satırdaki tüm veri sütunlarını görebilir.

Soru: RLS, ayrıntılı verileri gizlerken görsellerde özetlenmiş verilere erişim vermemi sağlar mı?
Cevap: Hayır. Belirli veri satırlarının güvenliğini sağlayabilirsiniz, ama kullanıcılar ayrıntıları veya özetlenmiş verileri her zaman görebilir.

Soru: Veri kaynağımda tanımlanmış güvenlik rolleri zaten var (örneğin, SQL Server rolleri veya SAP BW rolleri). Bunlar ile RLS arasındaki ilişki nedir?
Cevap: Yanıt, verileri içeri aktarıp aktarmadığınıza veya DirectQuery kullanıp kullanmadığınıza bağlı olarak değişir. Power BI veri kümenize veri aktarıyorsanız, veri kaynağınızdaki güvenlik rolleri kullanılmaz. Bu durumda, Power BI’da bağlanan kullanıcılar için güvenlik kurallarını uygulamak için RLS tanımlamanız gerekir. DirectQuery kullanıyorsanız, veri kaynağınızdaki güvenlik rolleri kullanılır. Kullanıcı bir rapor açtığında Power BI temel alınan veri kaynağına bir sorgu gönderir ve bu sorgu, kullanıcının kimlik bilgilerine göre bu verilere güvenlik kuralları uygular.

Sonraki adımlar