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

Power BI Rapor Sunucusu ile satır düzeyi güvenlik (RLS) ayarlamak, belirli kullanıcılar için veri erişimini kısıtlayabilir. Filtreler veri erişimini satır düzeyinde kısıtlar ve roller içinde filtreler tanımlayabilirsiniz. Power BI Rapor Sunucusu'de varsayılan izinleri kullanıyorsanız, Power BI raporu için Publisher veya Content Manager izinlerine sahip olan tüm kullanıcılar bu raporun rollerine üye atayabilir.

Power BI Desktop ile Power BI'a aktarılan raporlar için RLS'yi yapılandırırsınız. RLS'yi SQL Server gibi DirectQuery kullanan raporlarda da yapılandırabilirsiniz. DirectQuery bağlantınız rapor okuyucuları için tümleşik kimlik doğrulaması kullanıyorsa RLS'ye uyulmadığını unutmayın. Analysis Services canlı bağlantıları için şirket içi modelde satır düzeyi güvenliği yapılandırabilirsiniz. Canlı bağlantı veri kümeleri için güvenlik seçeneği gösterilmez.

Power BI Desktop'ta rolleri ve kuralları tanımlama

Power BI Desktop'ta roller ve kurallar tanımlayabilirsiniz. Power BI'da yayımladığınızda rol tanımlarını da yayımlarsınız.

Güvenlik rollerini tanımlamak için:

  1. Verileri Power BI Desktop raporunuz içine aktarın veya DirectQuery bağlantısı yapılandırın.

    Not

    Analysis Services için Power BI Desktop canlı bağlantıları içinde rol tanımlayamazsınız. Bunu Analysis Services modeli içinde yapmanız gerekir.

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

    Rolleri yönet'i vurgulayan Modelleme sekmesinin ekran görüntüsü.

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

    Rolleri yönet penceresinin Oluştur'u vurgulayan ekran görüntüsü.

  4. Roller'in altında rol için bir ad belirtin.

    Not

    Virgülle bir rol tanımlayamazsınız, örneğin London,ParisRole.

  5. Tablolar'ın altında, DAX (Veri Çözümleme İfadesi) 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”.

    Örnek bir DAX ifadesini vurgulayan Rolleri yönet penceresinin ekran görüntüsü.

    Not

    Bu ifade içinde username() kullanabilirsiniz. username() öğesinin Power BI Desktop'ta ETKİALANI\kullanıcıadı biçimine sahip olduğunu unutmayın. Power BI hizmeti ve Power BI Rapor Sunucusu içinde, kullanıcının Kullanıcı Asıl Adı (UPN) biçimindedir. Alternatif olarak, kullanıcıyı her zaman kullanıcı asıl adı username@contoso.combiçiminde döndüren userprincipalname() kullanabilirsiniz.

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

    Onay işaretini vurgulayan Tablo filtresi DAX ifade penceresinin ekran görüntüsü.

    Not

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

  8. Kaydet'i seçin.

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

Çift yönlü çapraz filtreleme

Varsayılan olarak, satır düzeyi güvenlik filtrelemesi, ilişkilerin tek yönlü veya çift yönlü olarak ayarlanmasından bağımsız olarak tek yönlü filtreler kullanır. Satır düzeyi güvenlikle çift yönlü çapraz filtreyi el ile etkinleştirebilirsiniz.

  • İlişkiyi seçin ve Güvenlik filtresini her iki yönde de uygula onay kutusunu işaretleyin.

    Güvenlik filtresi uygulama

Kullanıcı adına veya oturum açma kimliğine göre dinamik satır düzeyi güvenlik uygularken bu kutuyu işaretleyin.

Daha fazla bilgi edinmek için bkz . Power BI Desktop'ta DirectQuery kullanarak çift yönlü çapraz filtreleme ve Tablolu BI Anlam Modelinin Güvenliğini Sağlama teknik teknik incelemesi.

Power BI Desktop'ta rolleri doğrulama

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

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

    Farklı görüntüle seçeneğinin vurgulandığı Modelleme sekmesinin ekran görüntüsü.

    Oluşturduğunuz rolleri gördüğünüz Rol olarak görüntüle penceresi görüntülenir.

    Hiçbiri'nin seçili olduğu Rol olarak görüntüle penceresinin ekran görüntüsü.

  2. Oluşturduğunuz bir rolü seçin. Ardından bu rolü uygulamak için Tamam'ı seçin.

    Rapor, söz konusu rolle ilgili verileri işler.

  3. Ayrıca Diğer kullanıcı'ı seçip belirli bir kullanıcı sağlayabilirsiniz.

    Örnek bir kullanıcının girilmiş olduğu Rol olarak görüntüle penceresinin ekran görüntüsü.

    Kullanıcı Asıl Adı'nı (UPN) sağlamak en iyisidir çünkü Power BI hizmeti ve Power BI Rapor Sunucusu bunu kullanır.

    Power BI Desktop'ta Diğer kullanıcı yalnızca DAX ifadelerinizi temel alan dinamik güvenlik kullanıyorsanız farklı sonuçlar görüntüler. Bu durumda, rolün yanı sıra kullanıcı adını da eklemeniz gerekir.

  4. Tamam'ı seçin.

    Rapor, RLS filtrelerinin kullanıcının görmesine izin vermesine bağlı olarak işlenir.

    Not

    Rol olarak görüntüle özelliği, Çoklu Oturum Açma (SSO) özelliğinin etkinleştirildiği DirectQuery modellerinde çalışmaz.

Rollere üye ekleme

Raporunuzu Power BI Rapor Sunucusu kaydettikten sonra güvenliği yönetir ve sunucuya üye ekler veya kaldırırsınız. Yalnızca rapor için Publisher veya Content Manager izinlerine sahip kullanıcılar satır düzeyi güvenlik seçeneğine sahiptir ve gri değildir.

Raporun ihtiyaç duyduğu roller yoksa, raporu Power BI Desktop'ta açmanız, roller eklemeniz veya değiştirmeniz ve ardından Power BI Rapor Sunucusu geri kaydetmeniz gerekir.

  1. Power BI Desktop'ta raporu Power BI Rapor Sunucusu kaydedin. Power BI Rapor Sunucusu için Power BI Desktop sürümünü kullanmanız gerekir.

  2. Power BI Rapor Hizmeti'nde raporun yanındaki üç noktayı (...) seçin.

  3. Satır düzeyi güvenliği yönet'i>seçin.

    Satır düzeyi güvenliği yönetme

    Satır düzeyi güvenlik sayfasında, Power BI Desktop'ta oluşturduğunuz bir role üye eklersiniz.

  4. Üye eklemek için Üye Ekle'yi seçin.

  5. Metin kutusuna Kullanıcı adı biçiminde (ETKİALANI\kullanıcı) kullanıcı veya grubu girin ve onlara atamak istediğiniz rolleri seçin. Üyenin kuruluşunuzda olması gerekir.

    Role üye ekleme

    Active Directory'yi nasıl yapılandırdığınıza bağlı olarak, buraya Kullanıcı Asıl Adı girmek de çalışır. Bu durumda, Rapor Sunucusu ilgili kullanıcı adını listede gösterir.

  6. Uygulamak için Tamam'a tıklayın.

  7. Üyeleri kaldırmak için adlarının yanındaki kutuyu işaretleyin ve Sil'i seçin. Aynı anda birden çok üyeyi silebilirsiniz.

    Üyeleri silme

username() ve userprincipalname()

Veri kümenizdeki DAX işlevleri username() veya userprincipalname() avantajlarından yararlanabilirsiniz. Bunları Power BI Desktop'taki ifadeler içinde kullanabilirsiniz. Modelinizi yayımladığınızda Power BI Rapor Sunucusu bunları kullanır.

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

Power BI Rapor Sunucusu içinde username() ve userprincipalname() her ikisi de kullanıcının e-posta adresine benzeyen Kullanıcı Asıl Adını (UPN) döndürür.

Power BI Rapor Sunucusu özel kimlik doğrulaması kullanıyorsanız, kullanıcılar için ayarladığınız kullanıcı adı biçimini döndürür.

Dikkat edilecekler ve sınırlamalar

Power BI modellerinde satır düzeyi güvenlikle ilgili geçerli sınırlamalar aşağıdadır.

username() DAX işlevini kullanan raporları olan kullanıcılar, tümleşik güvenlikle DirectQuery kullanılırken Kullanıcı Asıl Adı'nın (UPN) döndürüldüğü yeni davranışlar fark edecektir. Bu senaryoda RLS'ye uyulmadığından, bu senaryodaki davranış değişmemiştir.

RLS'i yalnızca Power BI Desktop ile oluşturulan veri kümelerinde tanımlayabilirsiniz. Excel ile oluşturulan veri kümelerinde RLS'yi etkinleştirmek için önce dosyalarınızı Power BI Desktop (PBIX) dosyalarına dönüştürmeniz gerekir. Excel dosyalarını dönüştürme hakkında daha fazla bilgi edinin.

Yalnızca depolanan kimlik bilgilerini kullanan Ayıklama, Dönüştürme, Yükleme (ETL) ve DirectQuery bağlantıları desteklenir. Tümleşik kimlik doğrulaması kullanan Analysis Services ve DirectQuery bağlantılarına yönelik canlı bağlantılar, temel alınan veri kaynağında işlenir.

DirectQuery ile tümleşik güvenlik kullanıyorsanız kullanıcılarınız şunları fark edebilir:

  • RLS devre dışı bırakılır ve tüm veriler döndürülür.
  • Kullanıcılar rol atamalarını güncelleştiremez ve RLS Yönetimi sayfasında bir hata alır.
  • DAX kullanıcı adı işlevi için, kullanıcı adını ETKİALANI\KULLANICI olarak almaya devam edin.

Rapor yazarları, raporu karşıya yükledikten sonra kendilerine uygun roller atayana kadar Power BI Rapor Sunucusu rapor verilerini görüntüleme erişimine sahip olmaz.

Grup üyelikleri aracılığıyla rol atamaları yalnızca Power BI Rapor Sunucusu NTLM veya Kerberos kimlik doğrulamasıyla çalışacak şekilde yapılandırıldığında desteklenir. Özel kimlik doğrulaması veya Windows Basic ile çalışan sunucular, kullanıcıların açıkça rollere atanmalarına ihtiyaç duyar.

SSS

Analysis Services veri kaynakları için bu rolleri oluşturabilir miyim?

Verileri Power BI Desktop'a aktardıysanız bunu yapabilirsiniz. Canlı bağlantı kullanıyorsanız, Power BI hizmeti içinde RLS'yi yapılandıramazsınız. RLS, şirket içi Analysis Services modeli içinde tanımlanır.

Kullanıcılarım tarafından erişilebilen sütunları veya ölçüleri sınırlamak için RLS kullanabilir miyim?

Hayır Bir kullanıcının belirli bir veri satırına erişimi varsa, bu satıra ait tüm veri sütunlarını görebilir.

RLS ayrıntılı verileri gizlememe izin veriyor ama görsellerde özetlenen verilere erişim veriyor mu?

Hayır, tek tek veri satırlarının güvenliğini sağlarsınız, ancak kullanıcılar her zaman ayrıntıları veya özetlenmiş verileri görebilir.

Zaten atanmış rollerim ve üyelerim varsa Power BI Desktop'a yeni roller ekleyebilir miyim?

Evet, zaten tanımlanmış rolleriniz ve Power BI Rapor Sunucusu atanmış üyeleriniz varsa, ek roller oluşturabilir ve geçerli atamalarınızı etkilemeden raporunuzu yeniden yayımlayabilirsiniz.

Başka sorunuz var mı? Power BI Topluluğu sormayı deneyin