Keamanan tingkat objek

Berlaku untuk: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

Keamanan model data dimulai dengan menerapkan peran dan filter tingkat baris secara efektif untuk menentukan izin pengguna pada objek dan data model data. Untuk model tabular 1400 dan yang lebih tinggi, Anda juga dapat menentukan keamanan tingkat objek (OLS), yang mencakup keamanan tingkat tabel dan keamanan tingkat kolom di objek Peran. Saat dikonfigurasi, data tabel dan kolom diamankan, bersama dengan metadata untuk membantu mencegah pengguna berbahaya menemukan bahwa objek seperti itu ada.

OLS dapat dikonfigurasi dengan menggunakan Editor Tabular sumber terbuka, Tabular Model Scripting Language (TMSL), atau Model Objek Tabular (TOM).

Keamanan tingkat tabel

Dengan keamanan tingkat tabel, Anda tidak hanya dapat membatasi akses ke data tabel, tetapi juga metadata nama tabel yang sensitif. Atur properti metadataPermission dari kelas tablePermissions di objek Peran ke tidak ada.

Dalam contoh ini, properti metadataPermission dari kelas tablePermissions untuk tabel Produk diatur ke tidak ada:

"roles": [
  {
    "name": "Users",
    "description": "All allowed users to query the model",
    "modelPermission": "read",
    "tablePermissions": [
      {
        "name": "Product",
        "metadataPermission": "none"
      }
    ]
  }

Keamanan tingkat kolom

Mirip dengan keamanan tingkat tabel, dengan keamanan tingkat kolom Anda tidak hanya dapat membatasi akses ke data kolom, tetapi juga metadata nama kolom sensitif. Atur properti metadataPermission dari kelas columnPermissions di objek Peran ke tidak ada.

Dalam contoh ini, properti metadataPermission dari kelas columnPermissions untuk kolom Tarif Dasar dalam tabel Karyawan diatur ke tidak ada:

"roles": [
  {
    "name": "Users",
    "description": "All allowed users to query the model",
    "modelPermission": "read",
    "tablePermissions": [
      {
        "name": "Employee",
        "columnPermissions": [
          {
            "name": "Base Rate",
            "metadataPermission": "none"
          }
        ]
      }
    ]
  }

Pembatasan

  • Keamanan tingkat tabel tidak dapat diatur untuk model jika memutus rantai hubungan. Kesalahan dihasilkan pada waktu pembuatan/desain. Misalnya, jika ada hubungan antara tabel A dan B, dan B dan C, Anda tidak dapat mengamankan tabel B. Jika tabel B diamankan, kueri pada tabel A tidak dapat transit hubungan antara tabel A dan B, dan B dan C. Dalam hal ini, hubungan terpisah dapat dikonfigurasi antara tabel A dan C.

    Keamanan tingkat tabel

  • Keamanan tingkat baris dan keamanan tingkat objek tidak dapat digabungkan dari peran yang berbeda karena dapat memperkenalkan akses yang tidak diinginkan ke data aman. Kesalahan dihasilkan pada waktu kueri untuk pengguna yang merupakan anggota kombinasi peran tersebut.

  • Perhitungan dinamis (pengukuran, KPI, DetailRows) secara otomatis dibatasi jika mereferensikan tabel atau kolom aman. Meskipun tidak ada mekanisme untuk mengamankan ukuran secara eksplisit, dimungkinkan untuk secara implisit mengamankan ukuran dengan memperbarui ekspresi untuk merujuk ke tabel atau kolom aman.

  • Hubungan yang merujuk pada kolom yang diamankan akan berfungsi selama tabel tempat kolom tersebut berada tidak diamankan.

Power BI

Visualisasi yang mereferensikan objek model semantik dengan OLS dikonfigurasi menampilkan pesan yang sama seperti untuk objek yang dihapus atau tidak ada.

Pesan OLS dalam visualisasi Power BI

Keterbatasan

Model dengan OLS yang dikonfigurasi untuk satu atau beberapa objek tabel atau kolom tidak didukung dengan fitur Power BI ini:

  • Visualisasi Tanya Jawab Umum
  • Visualisasi wawasan cepat
  • Visualisasi narasi cerdas
  • Galeri Tipe Data Excel

Lihat juga

Roles
Objek Roles (TMSL)
Bahasa Pembuatan Skrip Model Tabular (TMSL)
Model Objek Tabular (TOM).