Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Berlaku untuk:✅ Titik akhir analitik SQL dan Gudang di Microsoft Fabric
Audit di Fabric Data Warehouse menyediakan kemampuan keamanan dan kepatuhan yang ditingkatkan dengan melacak dan merekam peristiwa database.
Dengan menggunakan log audit SQL, Anda dapat memantau aktivitas basis data, mendeteksi potensi ancaman keamanan, dan memenuhi persyaratan kepatuhan dengan menjaga jejak audit dari tindakan kunci, seperti:
- Upaya autentikasi dan perubahan kontrol akses
- Operasi akses dan modifikasi data
- Perubahan skema dan aktivitas administratif
- Perubahan izin dan konfigurasi keamanan
Penting
Secara bawaan, log audit SQL NONAKTIF. Pengguna dengan izin kueri audit harus mengaktifkannya untuk menangkap log.
Untuk memulai, tinjau langkah-langkah dalam Cara mengonfigurasi log audit SQL di Fabric Data Warehouse.
Storage
Log audit SQL dienkripsi saat tidak aktif dan disimpan di OneLake.
Untuk Fabric Data Warehouse, log audit ditulis ke dalam file .XEL yang disimpan di folder Audit gudang data di OneLake.
Pengguna dengan peran berikut dapat mengakses folder audit:
- Admin Ruang Kerja
- Ruang Kerja Anggota
- Ruang Kerja Kontributor
- Penampil Ruang Kerja dengan izin Baca Semua
Pengguna ini dapat:
- Telusuri folder Audit
- Lihat file audit yang
.XELdihasilkan oleh audit SQL - Salin file untuk analisis offline
- Buka file dengan alat seperti SQL Server Management Studio (SSMS)
Anda juga dapat mengkueri log audit dengan T-SQL melalui sys.fn_get_audit_file_v2.
Untuk petunjuk, lihat Cara Mengonfigurasi Log Audit SQL di Fabric Data Warehouse.
Petunjuk / Saran
Mengonfigurasi log audit di Microsoft Fabric Data Warehouse dapat meningkatkan biaya penyimpanan tergantung pada grup tindakan dan peristiwa yang direkam. Aktifkan hanya peristiwa yang diperlukan untuk menghindari biaya penyimpanan yang tidak perlu.
Performance
Fitur log audit SQL dioptimalkan untuk ketersediaan dan kinerja basis data yang diaudit. Selama periode aktivitas yang sangat tinggi atau beban jaringan yang tinggi, fitur audit mungkin memungkinkan transaksi untuk melanjutkan tanpa merekam semua peristiwa yang ditandai untuk audit.
Hak akses
Pengguna harus memiliki izin Kueri audit (Audit) untuk mengatur dan mengakses log audit.
- Secara default, Admin Ruang Kerja memiliki izin untuk kueri Audit ke semua item di ruang kerja.
- Admin dapat memberikan izin kueri audit pada item kepada pengguna lain melalui kotak dialog berbagi.
Admin Workspace dapat memberikan izin kueri Audit pada suatu item dengan menggunakan opsi menu bersama di portal Fabric. Untuk memverifikasi apakah pengguna memiliki izin kueri audit, periksa pengaturan Kelola Izin.
Di item Gudang Anda, pilih tombol Bagikan .
Atau, di portal Fabric, di ruang kerja Anda.
...Pilih menu konteks untuk item Gudang Anda, pilih Kelola izin.Di panel Berikan akses kepada orang, berikan izin kepada pengguna.
Query log audit menggunakan izin T-SQL
Berikan izin kepada pengguna VIEW DATABASE SECURITY AUDIT agar mereka dapat melakukan query log audit dengan menggunakan izin T-SQL, meskipun mereka tidak memiliki peran administratif workspace.
Ketika Anda memberikan izin berikut, pengguna dapat melakukan kueri log audit dengan menggunakan fungsi berikut sys.fn_get_audit_file_v2 :
GRANT VIEW DATABASE SECURITY AUDIT TO [user];
Petunjuk / Saran
Izin ini VIEW DATABASE SECURITY AUDIT hanya memberikan kemampuan untuk melakukan kueri log audit. Aplikasi ini tidak memberikan akses ke file atau izin untuk mengubah konfigurasi audit.
Grup tindakan dan tindakan audit tingkat basis data
Untuk membuat konfigurasi log audit lebih mudah diakses, portal Fabric menggunakan nama yang ramah untuk membantu Admin non-SQL dan pengguna lain dengan mudah memahami peristiwa Fabric Data Warehouse yang ditangkap.
Fabric memetakan nama yang mudah dikenali ini ke grup tindakan dasar Audit SQL. Gunakan tabel berikut sebagai referensi.
| Nama yang Ramah Pengguna | Nama Grup Tindakan | Deskripsi |
|---|---|---|
| Objek Diakses | DATABASE_OBJECT_ACCESS_GROUP |
Mencatat akses ke objek database seperti jenis pesan, rakitan, atau kontrak. |
| Objek Diubah | DATABASE_OBJECT_CHANGE_GROUP |
Mencatat operasi CREATE, ALTER, atau DROP pada objek database. |
| Pemilik Objek Diubah | DATABASE_OBJECT_OWNERSHIP_CHANGE_GROUP |
Mencatat perubahan kepemilikan objek database. |
| Izin Objek Diubah | DATABASE_OBJECT_PERMISSION_CHANGE_GROUP |
Mencatat GRANT, REVOKE, atau DENY tindakan pada objek database. |
| Pengguna Diubah | DATABASE_PRINCIPAL_CHANGE_GROUP |
Pembuatan log, perubahan, atau penghapusan prinsipal database (pengguna, peran). |
| Pengguna ditiru | DATABASE_PRINCIPAL_IMPERSONATION_GROUP |
Mencatat operasi impersonasi (seperti EXECUTE AS). |
| Anggota peran diubah | DATABASE_ROLE_MEMBER_CHANGE_GROUP |
Mencatat penambahan atau penghapusan login dari peran database. |
| Pengguna gagal masuk | FAILED_DATABASE_AUTHENTICATION_GROUP |
Mencatat upaya autentikasi yang gagal dalam database. |
| Izin Skema telah digunakan | SCHEMA_OBJECT_ACCESS_GROUP |
Mencatat akses ke objek skema. |
| Skema diubah | SCHEMA_OBJECT_CHANGE_GROUP |
Log CREATE, ALTER, atau DROP operasi skema. |
| Pemeriksaan Izin Objek Skema | SCHEMA_OBJECT_OWNERSHIP_CHANGE_GROUP |
Mencatat perubahan pada kepemilikan objek skema. |
| Izin Objek Skema Basis Data Telah Diubah | SCHEMA_OBJECT_PERMISSION_CHANGE_GROUP |
Mencatat tindakan GRANT, REVOKE, atau DENY pada objek skema. |
| Batch Telah Selesai | BATCH_COMPLETED_GROUP |
Kejadian ini dimunculkan setiap kali teks batch, prosedur tersimpan, atau operasi manajemen transaksi selesai dijalankan. |
| Batch Telah Dimulai | BATCH_STARTED_GROUP |
Kejadian ini dipicu setiap kali teks batch, prosedur tersimpan, atau operasi manajemen transaksi mulai dieksekusi. |
| Audit Diubah | AUDIT_CHANGE_GROUP |
Kejadian ini dimunculkan setiap kali audit dibuat, dimodifikasi, atau dihapus. |
| Pengguna Telah Keluar | DATABASE_LOGOUT_GROUP |
Kejadian ini dimunculkan ketika pengguna database keluar dari database. |
| Pengguna Masuk | SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP |
Menunjukkan bahwa perwakilan berhasil masuk ke database. |
Tindakan audit tingkat database
Selain grup tindakan, Anda dapat mengonfigurasi tindakan audit individual untuk mencatat peristiwa database tertentu:
| Tindakan Audit | Deskripsi |
|---|---|
SELECT |
Mencatat pernyataan SELECT pada objek tertentu. |
INSERT |
Mencatat INSERT operasi pada objek yang ditentukan. |
UPDATE |
Mencatat UPDATE operasi pada objek yang ditentukan. |
DELETE |
Mencatat DELETE operasi pada objek yang ditentukan. |
EXECUTE |
Mencatat eksekusi prosedur atau fungsi tersimpan. |
RECEIVE |
Merekam operasi RECEIVE pada antrean Service Broker. |
REFERENCES |
Mencatat pemeriksaan hak akses yang melibatkan batasan kunci asing. |
Kurangi noise audit dengan penyaringan predikat
Untuk memfilter event mana yang ditangkap, gunakan filter ekspresi predikat opsional.
Gunakan penyaringan predikat untuk mengurangi noise dari aktivitas yang diharapkan dan berulang, seperti identitas otomatisasi, service principal, atau tugas terjadwal, tanpa harus menonaktifkan grup aksi yang dibutuhkan organisasi Anda untuk tujuan kepatuhan atau investigasi.
- Hanya ketika sebuah event sesuai dengan predikat yang dikonfigurasi, event log audit SQL untuk aksi tersebut akan dibuat.
- Penyaringan dilakukan sebelum peristiwa ditulis, sehingga peristiwa yang dikecualikan tidak tersedia untuk penyelidikan retrospektif nanti. Perlakukan pengecualian predikat sebagai keputusan kebijakan audit yang disengaja, dan tinjau predikat yang dikonfigurasi secara berkala seiring perubahan kepemilikan, izin, dan profil risiko.
- Penyaringan predikat hanya mengevaluasi peristiwa yang sudah dikonfigurasi untuk ditangkap oleh grup tindakan audit atau aksi yang diaktifkan.
- Jika grup aksi dasar tidak diaktifkan, tidak ada event yang dihasilkan untuk dievaluasi oleh predikat, dan filter tidak memiliki efek. Misalnya, untuk memfilter
SELECTpernyataan menggunakan predikat padastatementbidang, Anda harus mengaktifkan grup aksi Batch Was Completed (BATCH_COMPLETED_GROUP) terlebih dahulu.
- Jika grup aksi dasar tidak diaktifkan, tidak ada event yang dihasilkan untuk dievaluasi oleh predikat, dan filter tidak memiliki efek. Misalnya, untuk memfilter
Anda dapat mengonfigurasi ekspresi predikat menggunakan portal Fabric atau API REST. Untuk langkah-langkah, lihat Konfigurasikan ekspresi predikat.
Sintaks ekspresi predikat
Ekspresi predikat menggunakan sintaks yang sama seperti <predicate_expression> klausa dalam CREATE SERVER AUDIT (Transact-SQL), tanpa WHERE kata kunci:
<predicate_expression> ::=
{ [ NOT ] <predicate_factor>
[ { AND | OR } [ NOT ] { <predicate_factor> } ] [ ,... n ] }
<predicate_factor> ::=
event_field_name { = | <> | != | > | >= | < | <= | LIKE }
{ number | 'string' }
-
event_field_namesesuai dengan kolom yang dikembalikan oleh sys.fn_get_audit_file (Transact-SQL). Anda dapat menggunakan semua kolom yang terdokumentasi, kecualifile_name,audit_file_offset, danevent_time. -
action_iddanclass_typeadalah string, tetapi Anda hanya dapat membandingkannya dengan nilai numerik dalam predikat. - Perbandingan string tidak melakukan konversi tipe implisit.
- Panjang ekspresi maksimum adalah 3.000 karakter.
- String kosong berarti tidak ada predikat yang diterapkan.
Misalnya, untuk mengecualikan aktivitas yang dihasilkan oleh service principal atau identitas otomatisasi yang diketahui, filter pada server_principal_name. Untuk mengecualikan pernyataan berulang SELECT , filter pada statement bidang: NOT statement LIKE 'SELECT %'.
Keterbatasan
- Ruang kerja default Anda tidak mendukung log audit SQL.
- Log audit SQL tidak didukung untuk rekam jepret gudang.
Penting
Log audit disimpan dalam item Gudang di OneLake. Jika Anda menghapus Gudang, Anda juga menghapus file log audit terkait dan tidak dapat mengaksesnya lagi.
Untuk menyimpan log audit untuk tujuan kepatuhan atau investigasi, salin .XEL file ke lokasi penyimpanan lain sebelum menghapus Gudang.
Batasan titik akhir analitik SQL
Batasan berikut berlaku saat mengaudit titik akhir analitik SQL:
- Operasi DML tidak ditangkap. Audit tidak merekam operasi seperti
INSERT,UPDATE,DELETE, danMERGEkarena manipulasi data untuk tabel Lakehouse terjadi melalui runtime Lakehouse daripada melalui titik akhir analitik SQL. - Akses langsung ke folder audit saat ini tidak didukung. Pengguna tidak dapat mengakses atau mengunduh file audit dasar
.XELdari folder audit Lakehouse.
Anda masih dapat melakukan query event audit untuk endpoint SQL analytics dengan menggunakan fungsi sys.fn_get_audit_file_v2T-SQL.
Langkah berikutnya
Konfigurasi log audit SQL di Fabric Data Warehouse