Aracılığıyla paylaş


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. Bu düzenleyiciyle, varsayılan açılan arabirimi ve DAX arabirimini kullanma arasında geçiş yapabilirsiniz. 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 Yeni'yi seçerek yeni bir rol oluşturun.

    Yeni rol oluştur düğmesinin vurgulandığı Rolleri yönet penceresinin ekran görüntüsü.

  4. Roller'in altında rol için bir ad girin ve Enter'ı seçin.

    Rolü yeniden adlandırmayı vurgulayan Rolleri yönet penceresinin ekran görüntüsü.

    Not

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

  5. Tablo seç'in altında, satır düzeyi güvenlik filtresi uygulamak istediğiniz tabloyu seçin.

  6. Verileri filtrele'nin altında rollerinizi tanımlamak için varsayılan düzenleyiciyi kullanın. Oluşturulan ifadeler bir true veya false değeri döndürür.

    Satır düzeyi güvenliği tanımlamak için Rolleri yönet penceresinin varsayılan düzenleyicisinin ekran görüntüsü.

    Not

    Power BI'da desteklenen tüm satır düzeyi güvenlik filtreleri varsayılan düzenleyici kullanılarak tanımlanamaz. Sınırlamalar, bugün yalnızca username() veya userprincipalname() gibi dinamik kurallar da dahil olmak üzere DAX kullanılarak tanımlanabilen ifadeleri içerir. Bu filtreleri kullanarak rolleri tanımlamak için DAX düzenleyicisini kullanmaya geçin.

  7. İsteğe bağlı olarak, rolünüzü tanımlamak üzere DAX düzenleyicisini kullanmaya geçmek için DAX düzenleyicisine geç'i seçin. DAX ifadeleri true veya false değerini döndürür. Örneğin: [Entity ID] = “Value”. DAX düzenleyicisi, formüller (intellisense) için otomatik tamamlama ile tamamlanır. İfade kutusunun üzerindeki onay işaretini seçerek ifadeyi doğrulayabilir ve değişiklikleri geri döndürmek için ifade kutusunun üzerindeki X düğmesini seçebilirsiniz.

    Ö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. Ayrıca, bu ifade kutusunda, normalde Fransızca veya Almanca gibi noktalı virgül ayırıcıları kullanan bir yerel ayar kullanıyor olsanız bile DAX işlev bağımsız değişkenlerini ayırmak için virgül kullanın.

  8. Varsayılan düzenleyiciye geç'i seçerek varsayılan düzenleyiciye geri dönebilirsiniz. Her iki düzenleyici arabiriminde yapılan tüm değişiklikler mümkün olduğunda arabirimler arasında geçiş yaparken kalıcı olur. DaX düzenleyicisini kullanarak varsayılan düzenleyicide tanımlanmayan bir rol tanımlarken, varsayılan düzenleyiciye geçmeyi denerseniz, düzenleyicileri değiştirmenin bazı bilgilerin kaybolmasına neden olabileceği uyarısını alırsınız. Bu bilgileri korumak için İptal'i seçin ve dax düzenleyicisinde yalnızca bu rolü düzenlemeye devam edin.

    Varsayılan düzenleyiciye geçmek istediğinizi onaylayan iletişim kutusunun ekran görüntüsü.

    Not

    Bu ifade kutusunda, normalde Fransızca veya Almanca gibi noktalı virgül ayırıcıları 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.

  9. 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