Bagikan melalui


Izin (Mesin Database)

Berlaku untuk:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsSistem Platform Analitik (PDW)Titik akhir analitik SQL di Microsoft FabricGudang di Microsoft FabricDatabase SQL di Microsoft Fabric

Setiap SQL Server yang dapat diamankan memiliki izin terkait yang dapat diberikan kepada prinsipal. Izin di Mesin Database dikelola di tingkat server yang ditetapkan untuk login dan peran server, dan pada tingkat database yang ditetapkan untuk pengguna database dan peran database. Model untuk Azure SQL Database memiliki sistem yang sama untuk izin database, tetapi izin tingkat server tidak tersedia. Artikel ini berisi daftar lengkap izin. Untuk implementasi umum izin, lihat Mulai menggunakan izin Mesin Database.

Jumlah total izin untuk SQL Server 2022 (16.x) adalah 292. Azure SQL Database mengekspos 292 izin. Sebagian besar izin berlaku untuk semua platform, tetapi beberapa tidak. Misalnya, sebagian besar izin tingkat server tidak dapat diberikan di Azure SQL Database, dan beberapa izin hanya masuk akal di Azure SQL Database. Izin baru diperkenalkan secara bertahap dengan rilis baru. SQL Server 2019 (15.x) mengekspos 248 izin. SQL Server 2017 (14.x) mengekspos 238 izin. SQL Server 2016 (13.x) mengekspos 230 izin. SQL Server 2014 (12.x) mengekspos 219 izin. SQL Server 2012 (11.x) mengekspos 214 izin. SQL Server 2008 R2 (10.50.x) mengekspos 195 izin. Artikel sys.fn_builtin_permissions menentukan izin mana yang baru dalam versi terbaru.

Dalam database SQL di Microsoft Fabric, hanya pengguna dan peran tingkat database yang didukung. Login tingkat server, peran, dan akun sa tidak tersedia. Dalam database SQL di Microsoft Fabric, ID Microsoft Entra untuk pengguna database adalah satu-satunya metode autentikasi yang didukung. Untuk informasi selengkapnya, lihat Otorisasi dalam database SQL di Microsoft Fabric.

Setelah Memahami izin yang diperlukan, Anda dapat menerapkan izin tingkat server ke peran masuk atau server, dan izin tingkat database ke pengguna atau peran database, dengan menggunakan pernyataan GRANT, REVOKE, dan DENY . Contohnya:

GRANT SELECT ON SCHEMA::HumanResources TO role_HumanResourcesDept;
REVOKE SELECT ON SCHEMA::HumanResources TO role_HumanResourcesDept;

Untuk tips merencanakan sistem izin, lihat Mulai menggunakan izin Mesin Database.

Konvensi penamaan izin

Berikut ini menjelaskan konvensi umum yang diikuti untuk izin penamaan:

  • CONTROL

    Menganugerah kemampuan seperti kepemilikan pada penerima hibah. Penerima izin secara efektif memiliki semua izin yang ditentukan pada yang dapat diamankan. Perwakilan yang telah diberikan CONTROL juga dapat memberikan izin pada yang dapat diamankan. Karena model keamanan SQL Server bersifat hierarkis, CONTROL pada cakupan tertentu secara implisit menyertakan CONTROL pada semua yang dapat diamankan di bawah cakupan tersebut. Misalnya, CONTROL pada database menyiratkan semua izin pada database, semua izin pada semua rakitan dalam database, semua izin pada semua skema dalam database, dan semua izin pada objek dalam semua skema dalam database.

  • ALTER

    Menganugerahkan kemampuan untuk mengubah properti, kecuali kepemilikan, dari yang dapat diamankan tertentu. Ketika diberikan pada cakupan, ALTER juga memberikan kemampuan untuk mengubah, membuat, atau menghilangkan yang dapat diamankan yang terkandung dalam cakupan tersebut. Misalnya, izin UBAH pada skema mencakup kemampuan untuk membuat, mengubah, dan menghilangkan objek dari skema.

  • ALTER ANY <Server Securable>, di mana Server Securable dapat menjadi server apa pun yang dapat diamankan.

    Menganugerahkan kemampuan untuk membuat, mengubah, atau menghilangkan masing-masing instans Server Securable. Misalnya, ALTER ANY LOGIN menganugerahkan kemampuan untuk membuat, mengubah, atau menghilangkan login apa pun dalam instans.

  • ALTER ANY <Database Securable>, di mana Database Securable dapat diamankan di tingkat database.

    Menganugerahkan kemampuan untuk MEMBUAT, MENGUBAH, atau MENGHILANGKAN masing-masing instans Database Securable. Misalnya, ALTER ANY SCHEMA menganugerahkan kemampuan untuk membuat, mengubah, atau menghilangkan skema apa pun dalam database.

  • AMBIL KEPEMILIKAN

    Memungkinkan penerima hak untuk mengambil alih kepemilikan sarana yang ditentukan dalam pemberian hak tersebut.

  • MENIRU <Login>

    Memungkinkan penerima izin untuk meniru login.

  • MENIRU <Pengguna>

    Memungkinkan penerima hibah untuk meniru pengguna.

  • BUAT <Server yang Dapat Diamankan>

    Menganugerahkan kepada penerima izin kemampuan untuk membuat Server Securable.

  • CREATE <Database Securable>

    Menganugerahkan kepada penerima izin kemampuan untuk membuat Database Securable.

  • BUAT <Securable yang Berisi Skema>

    Menganugerahkan kemampuan untuk membuat skema yang dapat diamankan. Namun, izin ALTER pada skema diperlukan untuk membuat yang dapat diamankan dalam skema tertentu.

  • MELIHAT DEFINISI

    Memungkinkan penerima hibah mengakses metadata.

  • REFERENCES

    Izin REFERENCES pada tabel diperlukan untuk membuat batasan KUNCI ASING yang mereferensikan tabel tersebut.

    Izin REFERENSI diperlukan pada objek untuk membuat FUNGSI atau TAMPILAN dengan klausa yang mereferensikan objek tersebut WITH SCHEMABINDING .

Bagan izin SQL Server

Gambar berikut menunjukkan izin dan hubungannya satu sama lain. Beberapa izin tingkat yang lebih tinggi (seperti CONTROL SERVER) dicantumkan berkali-kali. Dalam artikel ini, poster terlalu kecil untuk dibaca. Anda dapat mengunduh Poster Izin Mesin Database berukuran penuh dalam format PDF.

Cuplikan layar dari PDF izin Mesin Database.

Izin yang berlaku untuk jaminan tertentu

Tabel berikut mencantumkan kelas utama izin dan jenis keamanan yang mungkin diterapkan.

Permission Berlaku pada
ALTER Semua kelas objek kecuali TYPE.
CONTROL Semua kelas objek:

AGGREGATE,
PERAN APLIKASI,
ASSEMBLY,
KUNCI ASIMETRIS,
GRUP KETERSEDIAAN,
CERTIFICATE,
CONTRACT,
CREDENTIALS,
DATABASE,
KREDENSIAL CAKUPAN DATABASE,
DEFAULT,
ENDPOINT,
KATALOG FULLTEXT,
DAFTAR HENTI FULLTEXT,
FUNCTION,
LOGIN,
JENIS PESAN,
PROCEDURE,
QUEUE,
PENGIKATAN LAYANAN JARAK JAUH,
ROLE,
ROUTE,
RULE,
SCHEMA,
DAFTAR PROPERTI PENCARIAN,
SERVER,
PERAN SERVER,
SERVICE,
KUNCI SIMETRIS,
SYNONYM,
TABLE,
TYPE,
USER,
LIHAT, dan
KOLEKSI SKEMA XML
DELETE Semua kelas objek kecuali KONFIGURASI, SERVER, dan JENIS LINGKUP DATABASE.
EXECUTE Jenis CLR, skrip eksternal, prosedur (Transact-SQL dan CLR), fungsi skalar dan agregat (Transact-SQL dan CLR), dan sinonim
IMPERSONATE Login dan pengguna
INSERT Sinonim, tabel dan kolom, tampilan, dan kolom. Izin dapat diberikan di tingkat database, skema, atau objek.
RECEIVE Antrean Service Broker
REFERENCES AGGREGATE,
ASSEMBLY,
KUNCI ASIMETRIS,
CERTIFICATE,
CONTRACT,
KREDENSIAL (berlaku untuk SQL Server 2022 (16.x) dan yang lebih baru),
DATABASE,
KREDENSIAL CAKUPAN DATABASE,
Katalog Fulltext
DAFTAR ABAIKAN FULLTEXT
FUNCTION,
JENIS PESAN,
PROCEDURE,
QUEUE,
RULE,
SCHEMA,
DAFTAR PROPERTI PENCARIAN,
OBJEK URUTAN,
KUNCI SIMETRIS,
TABLE,
TYPE,
LIHAT, dan
KOLEKSI SKEMA XML
SELECT Sinonim, tabel dan kolom, tampilan, dan kolom. Izin dapat diberikan di tingkat database, skema, atau objek.
AMBIL KEPEMILIKAN Semua kelas objek kecuali KONFIGURASI LINGKUP DATABASE, LOGIN, SERVER, dan PENGGUNA.
UPDATE Sinonim, tabel dan kolom, tampilan, dan kolom. Izin dapat diberikan di tingkat database, skema, atau objek.
LIHAT PELACAKAN PERUBAHAN Skema dan tabel
MELIHAT DEFINISI Semua kelas objek kecuali KONFIGURASI LINGKUP DATABASE, dan SERVER.

Caution

Izin default yang diberikan ke objek sistem pada saat penyiapan dievaluasi dengan hati-hati terhadap kemungkinan ancaman dan tidak perlu diubah sebagai bagian dari pengerasan penginstalan SQL Server. Setiap perubahan pada izin pada objek sistem dapat membatasi atau merusak fungsionalitas dan berpotensi meninggalkan penginstalan SQL Server Anda dalam status tidak didukung.

Izin SQL Server

Tabel berikut ini menyediakan daftar lengkap izin SQL Server. Izin Azure SQL Database hanya tersedia untuk keamanan dasar yang didukung. Izin tingkat server tidak dapat diberikan di Azure SQL Database, namun dalam beberapa kasus izin database tersedia sebagai gantinya.

Basis yang dapat diamankan Izin terperinci pada basis yang dapat diamankan Kode jenis izin Securable yang berisi basis yang dapat diamankan Izin pada kontainer yang dapat diamankan yang menyiratkan izin terperinci pada basis yang dapat diamankan
PERAN APLIKASI ALTER AL DATABASE MENGUBAH PERAN APLIKASI APA PUN
PERAN APLIKASI CONTROL CL DATABASE CONTROL
PERAN APLIKASI MELIHAT DEFINISI VW DATABASE MELIHAT DEFINISI
ASSEMBLY ALTER AL DATABASE MENGUBAH RAKITAN APA PUN
ASSEMBLY CONTROL CL DATABASE CONTROL
ASSEMBLY REFERENCES RF DATABASE REFERENCES
ASSEMBLY AMBIL KEPEMILIKAN TO DATABASE CONTROL
ASSEMBLY MELIHAT DEFINISI VW DATABASE MELIHAT DEFINISI
KUNCI ASIMETRIS ALTER AL DATABASE MENGUBAH KUNCI ASIMETRIS APA PUN
KUNCI ASIMETRIS CONTROL CL DATABASE CONTROL
KUNCI ASIMETRIS REFERENCES RF DATABASE REFERENCES
KUNCI ASIMETRIS AMBIL KEPEMILIKAN TO DATABASE CONTROL
KUNCI ASIMETRIS MELIHAT DEFINISI VW DATABASE MELIHAT DEFINISI
KELOMPOK KETERSEDIAAN ALTER AL SERVER MENGUBAH GRUP KETERSEDIAAN APA PUN
KELOMPOK KETERSEDIAAN CONTROL CL SERVER SERVER PENGENDALI
KELOMPOK KETERSEDIAAN AMBIL KEPEMILIKAN TO SERVER SERVER KONTROL
KELOMPOK KETERSEDIAAN MELIHAT DEFINISI VW SERVER LIHAT DEFINISI APA PUN
CERTIFICATE ALTER AL DATABASE MENGUBAH SERTIFIKAT APA PUN
CERTIFICATE CONTROL CL DATABASE CONTROL
CERTIFICATE REFERENCES RF DATABASE REFERENCES
CERTIFICATE AMBIL KEPEMILIKAN TO DATABASE CONTROL
CERTIFICATE MELIHAT DEFINISI VW DATABASE MELIHAT DEFINISI
CONTRACT ALTER AL DATABASE MENGUBAH KONTRAK APA PUN
CONTRACT CONTROL CL DATABASE CONTROL
CONTRACT REFERENCES RF DATABASE REFERENCES
CONTRACT AMBIL KEPEMILIKAN TO DATABASE CONTROL
CONTRACT MELIHAT DEFINISI VW DATABASE MELIHAT DEFINISI
CREDENTIAL CONTROL CL SERVER SERVER KONTROL
CREDENTIAL REFERENCES RF SERVER MENGUBAH KREDENSIAL APA PUN
DATABASE Mengelola Operasi Massal Basis Data DABO SERVER SERVER PENGONTROL
DATABASE ALTER AL SERVER MENGUBAH SEMUA DATABASE
DATABASE MENGUBAH PERAN APLIKASI APA PUN ALAR SERVER SERVER PENGENDALI
DATABASE MENGUBAH RAKITAN APA PUN ALAS SERVER SERVER KONTROL
DATABASE MENGUBAH KUNCI ASIMETRIS APA PUN ALAK SERVER SERVER KONTROL
DATABASE MENGUBAH SERTIFIKAT APA PUN ALCF SERVER SERVER KONTROL
DATABASE MENGUBAH KUNCI ENKRIPSI KOLOM APA PUN ALCK

Berlaku untuk SQL Server (SQL Server 2016 (13.x) hingga saat ini), Azure SQL Database.
SERVER SERVER PENGENDALI
DATABASE MENGUBAH KUNCI MASTER KOLOM APA PUN ALCM

Berlaku untuk SQL Server (SQL Server 2016 (13.x) hingga saat ini), Azure SQL Database.
SERVER Server Kontrol
DATABASE MENGUBAH KONTRAK APA PUN ALSC SERVER SERVER PENGENDALI
DATABASE MENGUBAH AUDIT DATABASE APA PUN ALDA SERVER MENGUBAH AUDIT SERVER APA PUN
DATABASE MENGUBAH PEMICU DDL DATABASE APA PUN ALTG SERVER SERVER PENGENDALI
DATABASE MENGUBAH PEMBERITAHUAN PERISTIWA DATABASE APA PUN ALED SERVER MENGUBAH PEMBERITAHUAN PERISTIWA APA PUN
DATABASE MENGUBAH SESI PERISTIWA DATABASE APA PUN AADS SERVER MENGUBAH SESI PERISTIWA APA PUN
DATABASE MENGUBAH PERISTIWA PENAMBAHAN SESI PERISTIWA DATABASE APA PUN LDAE SERVER MENGUBAH PERISTIWA PENAMBAHAN SESI PERISTIWA APA PUN
DATABASE MENGUBAH TARGET PENAMBAHAN SESI PERISTIWA DATABASE APA PUN LDAT SERVER MENGUBAH TARGET PENAMBAHAN SESI PERISTIWA APA PUN
DATABASE MENGUBAH SESI PERISTIWA DATABASE APA PUN NONAKTIF DDES SERVER MENGUBAH SESI PERISTIWA APA PUN NONAKTIF
DATABASE MENGUBAH PERISTIWA PENGHILANGAN SESI PERISTIWA DATABASE APA PUN LDDE SERVER MENGUBAH PERISTIWA PENGHILANGAN SESI PERISTIWA APA PUN
DATABASE MENGUBAH TARGET PENURUNAN SESI PERISTIWA DATABASE APA PUN LDDT SERVER MENGUBAH TARGET PENGHILANGAN SESI PERISTIWA APA PUN
DATABASE MENGUBAH SESI PERISTIWA DATABASE APA PUN YANG DIAKTIFKAN EDES SERVER MENGUBAH SESI PERISTIWA APA PUN YANG DIAKTIFKAN
DATABASE MENGUBAH OPSI SESI PERISTIWA DATABASE APA PUN LDSO SERVER MENGUBAH OPSI SESI PERISTIWA APA PUN
DATABASE MENGUBAH KONFIGURASI CAKUPAN DATABASE APA PUN ALDC

Berlaku untuk SQL Server (SQL Server 2016 (13.x) hingga saat ini), Azure SQL Database.
SERVER Server Kontrol
DATABASE MENGUBAH RUANG DATA APA PUN ALDS SERVER SERVER KONTROL
DATABASE UBAH SUMBER DATA EKSTERNAL APA PUN AEDS SERVER SERVER KONTROL
DATABASE MENGUBAH FORMAT FILE EKSTERNAL APAPUN AEFF SERVER Server Pengendali
DATABASE MENGUBAH PEKERJAAN EKSTERNAL APA PUN AESJ SERVER SERVER PENGENDALI
DATABASE MENGUBAH BAHASA EKSTERNAL APA PUN ALLA SERVER SERVER KONTROL
DATABASE MENGUBAH PUSTAKA EKSTERNAL APA PUN ALEL SERVER SERVER KONTROL
DATABASE MENGUBAH ALIRAN EKSTERNAL APA PUN AEST SERVER SERVER PENGENDALI
DATABASE MENGUBAH KATALOG FULLTEXT APA PUN ALFT SERVER SERVER KONTROL
DATABASE UBAH MASKER APA PUN AAMK

Berlaku untuk SQL Server (SQL Server 2016 (13.x) hingga saat ini), Azure SQL Database.
SERVER SERVER KONTROL
DATABASE UBAH JENIS PESAN APA PUN ALMT SERVER SERVER KONTROL
DATABASE MENGUBAH PENGIKATAN LAYANAN JARAK JAUH APA PUN ALSB SERVER SERVER KONTROL
DATABASE MENGUBAH PERAN APA PUN ALRL SERVER KONTROL SERVER
DATABASE MENGUBAH RUTE APA PUN ALRT SERVER SERVER KENDALI
DATABASE MENGUBAH SKEMA MANAPUN ALSM SERVER SERVER KONTROL
DATABASE MENGUBAH KEBIJAKAN KEAMANAN APA PUN ALSP

Berlaku untuk SQL Server (SQL Server 2016 (13.x) hingga saat ini), Azure SQL Database.
SERVER SERVER PENGENDALI
DATABASE MENGUBAH KLASIFIKASI SENSITIVITAS APA PUN AASC
Berlaku untuk SQL Server (SQL Server 2019 (15.x) hingga saat ini), Azure SQL Database.
SERVER SERVER PENGENDALI
DATABASE MENGUBAH LAYANAN APA PUN ALSV SERVER SERVER KONTROL
DATABASE MENGUBAH KUNCI SIMETRIS APA PUN ALSK SERVER SERVER PENGENDALI
DATABASE MENGUBAH PENGGUNA APA PUN ALUS SERVER SERVER KONTROL
DATABASE UBAH LEDGER ALR SERVER CONTROL
DATABASE UBAH KONFIGURASI LEDGER ALC SERVER SERVER KONTROL
DATABASE AUTHENTICATE AUTH SERVER MENGAUTENTIKASI SERVER
DATABASE DATABASE CADANGAN BADB SERVER SERVER KONTROL
DATABASE LOG CADANGAN BALO SERVER SERVER KONTROL
DATABASE CHECKPOINT CP SERVER SERVER KONTROL
DATABASE CONNECT CO SERVER SERVER KONTROL
DATABASE MENGHUBUNGKAN REPLIKASI CORP SERVER SERVER KONTROL
DATABASE CONTROL CL SERVER SERVER KONTROL
DATABASE BUAT AGREGAT CRAG SERVER SERVER KONTROL
DATABASE MEMBUAT SESI PERISTIWA DATABASE APA PUN CRDS SERVER MEMBUAT SESI PERISTIWA APA PUN
DATABASE MEMBUAT RAKITAN CRAS SERVER SERVER KONTROL
DATABASE MEMBUAT KUNCI ASIMETRIS CRAK SERVER SERVER KONTROL
DATABASE BUAT SERTIFIKAT CRCF SERVER SERVER KONTROL
DATABASE BUAT KONTRAK CRSC SERVER SERVER KONTROL
DATABASE BUAT DATABASE CRDB SERVER MEMBUAT DATABASE APA PUN
DATABASE MEMBUAT PEMBERITAHUAN PERISTIWA DDL DATABASE CRED SERVER MEMBUAT PEMBERITAHUAN PERISTIWA DDL
DATABASE BUAT DEFAULT CRDF SERVER SERVER KONTROL
DATABASE BUAT BAHASA EKSTERNAL CRLA SERVER SERVER KONTROL
DATABASE BUAT PUSTAKA EKSTERNAL CREL SERVER SERVER KONTROL
DATABASE BUAT KATALOG FULLTEXT CRFT SERVER SERVER KONTROL
DATABASE BUAT FUNGSI CRFN SERVER SERVER KONTROL
DATABASE MEMBUAT JENIS PESAN CRMT SERVER SERVER KONTROL
DATABASE CREATE PROCEDURE (membuat prosedur) CRPR SERVER SERVER KONTROL
DATABASE BUAT ANTREAN CRQU SERVER SERVER KONTROL
DATABASE MEMBUAT PENGIKATAN LAYANAN JARAK JAUH CRSB SERVER SERVER KONTROL
DATABASE BUAT PERAN CRRL SERVER SERVER KONTROL
DATABASE BUAT RUTE CRRT SERVER SERVER KONTROL
DATABASE BUAT ATURAN CRRU SERVER SERVER KONTROL
DATABASE Buat Skema CRSM SERVER SERVER KONTROL
DATABASE BUAT LAYANAN CRSV SERVER SERVER KONTROL
DATABASE MEMBUAT KUNCI SIMETRIS CRSK SERVER SERVER KONTROL
DATABASE MEMBUAT SINONIM CRSN SERVER SERVER KONTROL
DATABASE CREATE TABLE CRTB SERVER SERVER KONTROL
DATABASE BUAT JENIS CRTY SERVER SERVER KONTROL
DATABASE BUAT PENGGUNA CUSR SERVER SERVER KONTROL
DATABASE BUAT TAMPILAN CRVW SERVER SERVER KONTROL
DATABASE MEMBUAT KOLEKSI SKEMA XML CRXS SERVER SERVER KONTROL
DATABASE DELETE DL SERVER SERVER KONTROL
DATABASE HILANGKAN SESI PERISTIWA DATABASE APA PUN DRDS SERVER HILANGKAN SESI PERISTIWA APA PUN
DATABASE AKTIFKAN LEDGER EL SERVER CONTROL
DATABASE EXECUTE EX SERVER SERVER KONTROL
DATABASE JALANKAN TITIK AKHIR EKSTERNAL APA PUN EAEE SERVER SERVER KONTROL
DATABASE JALANKAN SKRIP EKSTERNAL APA PUN EAES

Berlaku untuk SQL Server (SQL Server 2016 (13.x) hingga saat ini).
SERVER SERVER KONTROL
DATABASE INSERT IN SERVER SERVER KONTROL
DATABASE Hentikan Koneksi Basis Data KIDC

Hanya berlaku untuk Azure SQL Database. Gunakan UBAH KONEKSI APA PUN di SQL Server.
SERVER MENGUBAH KONEKSI APA PUN
DATABASE REFERENCES RF SERVER SERVER KONTROL
DATABASE SELECT SL SERVER SERVER KONTROL
DATABASE SHOWPLAN SPLN SERVER ALTER TRACE
DATABASE BERLANGGANAN PEMBERITAHUAN KUERI SUQN SERVER SERVER KONTROL
DATABASE AMBIL KEPEMILIKAN TO SERVER SERVER KONTROL
DATABASE UNMASK UMSK

Berlaku untuk SQL Server (SQL Server 2016 (13.x) hingga saat ini), Azure SQL Database.
SERVER SERVER KONTROL
DATABASE UPDATE UP SERVER SERVER KONTROL
DATABASE LIHAT DEFINISI KUNCI ENKRIPSI KOLOM APA PUN VWCK

Berlaku untuk SQL Server (SQL Server 2016 (13.x) hingga saat ini), Azure SQL Database.
SERVER LIHAT STATUS SERVER
DATABASE LIHAT DEFINISI KUNCI MASTER KOLOM APA PUN VWCM

Berlaku untuk SQL Server (SQL Server 2016 (13.x) hingga saat ini), Azure SQL Database.
SERVER LIHAT STATUS SERVER
DATABASE LIHAT KLASIFIKASI SENSITIVITAS APA PUN VASC SERVER SERVER KONTROL
DATABASE LIHAT DEFINISI YANG DIAMANKAN SECARA KRIPTOGRAFIS VCD SERVER LIHAT DEFINISI YANG DIAMANKAN SECARA KRIPTOGRAFIS
DATABASE TAMPILKAN STATUS PERFORMA DATABASE VDP SERVER LIHAT STATUS PERFORMA SERVER
DATABASE LIHAT AUDIT KEAMANAN DATABASE VDSA SERVER SERVER KONTROL
DATABASE LIHAT STATUS KEAMANAN DATABASE VDS SERVER LIHAT STATUS KEAMANAN SERVER
DATABASE TAMPILKAN STATUS DATABASE VWDS SERVER LIHAT STATUS SERVER
DATABASE MELIHAT DEFINISI VW SERVER LIHAT DEFINISI APA PUN
DATABASE LIHAT KONTEN LEDGER VLC SERVER CONTROL
DATABASE LIHAT DESKRIPSI KEAMANAN VWS SERVER LIHAT DEFINISI KEAMANAN APA PUN
DATABASE LIHAT DEFINISI PERFORMA VWP SERVER LIHAT DEFINISI PERFORMA APA PUN
KREDENSIAL DENGAN LINGKUP DATABASE ALTER AL DATABASE CONTROL
KREDENSIAL DENGAN LINGKUP DATABASE CONTROL CL DATABASE CONTROL
KREDENSIAL DENGAN LINGKUP DATABASE REFERENCES RF DATABASE REFERENCES
KREDENSIAL DENGAN LINGKUP DATABASE AMBIL KEPEMILIKAN TO DATABASE CONTROL
KREDENSIAL DENGAN LINGKUP DATABASE MELIHAT DEFINISI VW DATABASE MELIHAT DEFINISI
ENDPOINT ALTER AL SERVER MENGUBAH TITIK AKHIR APA PUN
ENDPOINT CONNECT CO SERVER SERVER KONTROL
ENDPOINT CONTROL CL SERVER SERVER KONTROL
ENDPOINT AMBIL KEPEMILIKAN TO SERVER SERVER KONTROL
ENDPOINT MELIHAT DEFINISI VW SERVER LIHAT DEFINISI APA PUN
Katalog Fulltext ALTER AL DATABASE MENGUBAH KATALOG FULLTEXT APA PUN
Katalog Fulltext CONTROL CL DATABASE CONTROL
Katalog Fulltext REFERENCES RF DATABASE REFERENCES
Katalog Fulltext AMBIL KEPEMILIKAN TO DATABASE CONTROL
Katalog Fulltext MELIHAT DEFINISI VW DATABASE MELIHAT DEFINISI
DAFTAR HENTI TEKS PENUH ALTER AL DATABASE MENGUBAH KATALOG FULLTEXT APA PUN
DAFTAR HENTI TEKS PENUH CONTROL CL DATABASE CONTROL
DAFTAR HENTI TEKS PENUH REFERENCES RF DATABASE REFERENCES
DAFTAR HENTI TEKS PENUH AMBIL KEPEMILIKAN TO DATABASE CONTROL
DAFTAR HENTI TEKS PENUH MELIHAT DEFINISI VW DATABASE MELIHAT DEFINISI
LOGIN ALTER AL SERVER MENGUBAH SEMUA LOGIN
LOGIN CONTROL CL SERVER SERVER KONTROL
LOGIN IMPERSONATE IM SERVER SERVER KONTROL
LOGIN MELIHAT DEFINISI VW SERVER LIHAT DEFINISI APA PUN
JENIS PESAN ALTER AL DATABASE UBAH JENIS PESAN APA PUN
JENIS PESAN CONTROL CL DATABASE CONTROL
JENIS PESAN REFERENCES RF DATABASE REFERENCES
JENIS PESAN AMBIL KEPEMILIKAN TO DATABASE CONTROL
JENIS PESAN MELIHAT DEFINISI VW DATABASE MELIHAT DEFINISI
OBJECT ALTER AL SCHEMA ALTER
OBJECT CONTROL CL SCHEMA CONTROL
OBJECT DELETE DL SCHEMA DELETE
OBJECT EXECUTE EX SCHEMA EXECUTE
OBJECT INSERT IN SCHEMA INSERT
OBJECT RECEIVE RC SCHEMA CONTROL
OBJECT REFERENCES RF SCHEMA REFERENCES
OBJECT SELECT SL SCHEMA SELECT
OBJECT AMBIL KEPEMILIKAN TO SCHEMA CONTROL
OBJECT UNMASK UMSK SCHEMA UNMASK
OBJECT UPDATE UP SCHEMA UPDATE
OBJECT LIHAT PELACAKAN PERUBAHAN VWCT SCHEMA LIHAT PELACAKAN PERUBAHAN
OBJECT MELIHAT DEFINISI VW SCHEMA MELIHAT DEFINISI
PENGIKATAN LAYANAN JARAK JAUH ALTER AL DATABASE MENGUBAH PENGIKATAN LAYANAN JARAK JAUH APA PUN
PENGIKATAN LAYANAN JARAK JAUH CONTROL CL DATABASE CONTROL
PENGIKATAN LAYANAN JARAK JAUH AMBIL KEPEMILIKAN TO DATABASE CONTROL
PENGIKATAN LAYANAN JARAK JAUH MELIHAT DEFINISI VW DATABASE MELIHAT DEFINISI
ROLE ALTER AL DATABASE MENGUBAH PERAN APA PUN
ROLE CONTROL CL DATABASE CONTROL
ROLE AMBIL KEPEMILIKAN TO DATABASE CONTROL
ROLE MELIHAT DEFINISI VW DATABASE MELIHAT DEFINISI
ROUTE ALTER AL DATABASE MENGUBAH RUTE APA PUN
ROUTE CONTROL CL DATABASE CONTROL
ROUTE AMBIL KEPEMILIKAN TO DATABASE CONTROL
ROUTE MELIHAT DEFINISI VW DATABASE MELIHAT DEFINISI
SCHEMA ALTER AL DATABASE MENGUBAH SKEMA MANAPUN
SCHEMA CONTROL CL DATABASE CONTROL
SCHEMA BUAT URUTAN CRSO DATABASE CONTROL
SCHEMA DELETE DL DATABASE DELETE
SCHEMA EXECUTE EX DATABASE EXECUTE
SCHEMA INSERT IN DATABASE INSERT
SCHEMA REFERENCES RF DATABASE REFERENCES
SCHEMA SELECT SL DATABASE SELECT
SCHEMA AMBIL KEPEMILIKAN TO DATABASE CONTROL
SCHEMA UNMASK UMSK DATABASE UNMASK
SCHEMA UPDATE UP DATABASE UPDATE
SCHEMA LIHAT PELACAKAN PERUBAHAN VWCT DATABASE LIHAT PELACAKAN PERUBAHAN
SCHEMA MELIHAT DEFINISI VW DATABASE MELIHAT DEFINISI
DAFTAR PROPERTI PENCARIAN ALTER AL SERVER MENGUBAH KATALOG FULLTEXT APA PUN
DAFTAR PROPERTI PENCARIAN CONTROL CL SERVER CONTROL
DAFTAR PROPERTI PENCARIAN REFERENCES RF SERVER REFERENCES
DAFTAR PROPERTI PENCARIAN AMBIL KEPEMILIKAN TO SERVER CONTROL
DAFTAR PROPERTI PENCARIAN MELIHAT DEFINISI VW SERVER MELIHAT DEFINISI
SERVER MENGELOLA OPERASI MASSAL ADBO Tidak berlaku Tidak berlaku
SERVER MENGUBAH GRUP KETERSEDIAAN APA PUN ALAG Tidak berlaku Tidak berlaku
SERVER MENGUBAH KONEKSI APA PUN ALCO Tidak berlaku Tidak berlaku
SERVER MENGUBAH KREDENSIAL APA PUN ALCD Tidak berlaku Tidak berlaku
SERVER MENGUBAH SEMUA DATABASE ALDB Tidak berlaku Tidak berlaku
SERVER MENGUBAH TITIK AKHIR APA PUN ALHE Tidak berlaku Tidak berlaku
SERVER MENGUBAH PEMBERITAHUAN PERISTIWA APA PUN ALES Tidak berlaku Tidak berlaku
SERVER MENGUBAH SESI PERISTIWA APA PUN AAES Tidak berlaku Tidak berlaku
SERVER MENGUBAH PERISTIWA PENAMBAHAN SESI PERISTIWA APA PUN LSAE Tidak berlaku Tidak berlaku
SERVER MENGUBAH TARGET PENAMBAHAN SESI PERISTIWA APA PUN LSAT Tidak berlaku Tidak berlaku
SERVER MENGUBAH SESI PERISTIWA APA PUN NONAKTIF DES Tidak berlaku Tidak berlaku
SERVER MENGUBAH PERISTIWA PENGHILANGAN SESI PERISTIWA APA PUN LSDE Tidak berlaku Tidak berlaku
SERVER MENGUBAH TARGET PENGHILANGAN SESI PERISTIWA APA PUN LSDT Tidak berlaku Tidak berlaku
SERVER MENGUBAH SESI PERISTIWA APA PUN YANG DIAKTIFKAN EES Tidak berlaku Tidak berlaku
SERVER MENGUBAH OPSI SESI PERISTIWA APA PUN LESO Tidak berlaku Tidak berlaku
SERVER MENGUBAH SERVER TERTAUT APA PUN ALLS Tidak berlaku Tidak berlaku
SERVER MENGUBAH SEMUA LOGIN ALLG Tidak berlaku Tidak berlaku
SERVER MENGUBAH AUDIT SERVER APA PUN ALAA Tidak berlaku Tidak berlaku
SERVER MENGUBAH PERAN SERVER APA PUN ALSR Tidak berlaku Tidak berlaku
SERVER UBAH SUMBER DAYA ALRS Tidak berlaku Tidak berlaku
SERVER UBAH STATUS SERVER ALSS Tidak berlaku Tidak berlaku
SERVER UBAH PENGATURAN ALST Tidak berlaku Tidak berlaku
SERVER ALTER TRACE ALTR Tidak berlaku Tidak berlaku
SERVER MENGAUTENTIKASI SERVER AUTH Tidak berlaku Tidak berlaku
SERVER MENGHUBUNGKAN DATABASE APA SAJA CADB Tidak berlaku Tidak berlaku
SERVER KONEKSIKAN SQL COSQ Tidak berlaku Tidak berlaku
SERVER SERVER KONTROL CL Tidak berlaku Tidak berlaku
SERVER MEMBUAT DATABASE APA PUN CRDB Tidak berlaku Tidak berlaku
SERVER MEMBUAT GRUP KETERSEDIAAN CRAC Tidak berlaku Tidak berlaku
SERVER MEMBUAT PEMBERITAHUAN PERISTIWA DDL CRDE Tidak berlaku Tidak berlaku
SERVER BUAT TITIK AKHIR CRHE Tidak berlaku Tidak berlaku
SERVER BUAT PERAN SERVER CRSR Tidak berlaku Tidak berlaku
SERVER MEMBUAT PEMBERITAHUAN PERISTIWA PELACAKAN CRTE Tidak berlaku Tidak berlaku
SERVER RAKITAN AKSES EKSTERNAL XA Tidak berlaku Tidak berlaku
SERVER MENIRU LOGIN APA PUN IAL Tidak berlaku Tidak berlaku
SERVER PILIH SEMUA PENGGUNA YANG DAPAT DIAMANKAN SUS Tidak berlaku Tidak berlaku
SERVER SHUTDOWN SHDN Tidak berlaku Tidak berlaku
SERVER RAKITAN TIDAK AMAN XU Tidak berlaku Tidak berlaku
SERVER MENAMPILKAN DATABASE APA PUN VWDB Tidak berlaku Tidak berlaku
SERVER LIHAT DEFINISI APA PUN VWAD Tidak berlaku Tidak berlaku
SERVER LIHAT STATUS SERVER VWSS Tidak berlaku Tidak berlaku
PERAN SERVER ALTER AL SERVER MENGUBAH PERAN SERVER APA PUN
PERAN SERVER CONTROL CL SERVER SERVER KONTROL
PERAN SERVER AMBIL KEPEMILIKAN TO SERVER SERVER KONTROL
PERAN SERVER MELIHAT DEFINISI VW SERVER LIHAT DEFINISI APA PUN
SERVICE ALTER AL DATABASE MENGUBAH LAYANAN APA PUN
SERVICE CONTROL CL DATABASE CONTROL
SERVICE SEND SN DATABASE CONTROL
SERVICE AMBIL KEPEMILIKAN TO DATABASE CONTROL
SERVICE MELIHAT DEFINISI VW DATABASE MELIHAT DEFINISI
KUNCI SIMETRIS ALTER AL DATABASE MENGUBAH KUNCI SIMETRIS APA PUN
KUNCI SIMETRIS CONTROL CL DATABASE CONTROL
KUNCI SIMETRIS REFERENCES RF DATABASE REFERENCES
KUNCI SIMETRIS AMBIL KEPEMILIKAN TO DATABASE CONTROL
KUNCI SIMETRIS MELIHAT DEFINISI VW DATABASE MELIHAT DEFINISI
TYPE CONTROL CL SCHEMA CONTROL
TYPE EXECUTE EX SCHEMA EXECUTE
TYPE REFERENCES RF SCHEMA REFERENCES
TYPE AMBIL KEPEMILIKAN TO SCHEMA CONTROL
TYPE MELIHAT DEFINISI VW SCHEMA MELIHAT DEFINISI
USER ALTER AL DATABASE MENGUBAH PENGGUNA APA PUN
USER CONTROL CL DATABASE CONTROL
USER IMPERSONATE IM DATABASE CONTROL
USER MELIHAT DEFINISI VW DATABASE MELIHAT DEFINISI
KOLEKSI SKEMA XML ALTER AL SCHEMA ALTER
KOLEKSI SKEMA XML CONTROL CL SCHEMA CONTROL
KOLEKSI SKEMA XML EXECUTE EX SCHEMA EXECUTE
KOLEKSI SKEMA XML REFERENCES RF SCHEMA REFERENCES
KOLEKSI SKEMA XML AMBIL KEPEMILIKAN TO SCHEMA CONTROL
KOLEKSI SKEMA XML MELIHAT DEFINISI VW SCHEMA MELIHAT DEFINISI

Izin terperinci baru ditambahkan ke SQL Server 2022

Izin berikut ditambahkan ke SQL Server 2022:

  • 10 izin baru telah ditambahkan untuk mengizinkan akses ke metadata sistem.

  • 18 izin baru telah ditambahkan untuk peristiwa yang diperluas.

  • 9 izin baru telah ditambahkan sehubungan dengan objek terkait keamanan.

  • 4 izin telah ditambahkan untuk Ledger.

  • 3 izin database tambahan.

Untuk informasi selengkapnya, lihat Izin terperinci baru untuk SQL Server 2022 dan Azure SQL untuk meningkatkan kepatuhan dengan PoLP.

Akses ke izin metadata sistem

Tingkat server:

  • LIHAT DEFINISI KEAMANAN APA PUN
  • LIHAT DEFINISI PERFORMA APA PUN
  • LIHAT STATUS KEAMANAN SERVER
  • LIHAT STATUS PERFORMA SERVER
  • LIHAT DEFINISI YANG DIAMANKAN SECARA KRIPTOGRAFIS

Tingkat database:

  • LIHAT STATUS KEAMANAN DATABASE
  • TAMPILKAN STATUS PERFORMA DATABASE
  • LIHAT DESKRIPSI KEAMANAN
  • LIHAT DEFINISI PERFORMA
  • LIHAT DEFINISI YANG DIAMANKAN SECARA KRIPTOGRAFIS

Izin kejadian yang diperluas

Tingkat server:

  • MEMBUAT SESI PERISTIWA APA PUN
  • HILANGKAN SESI PERISTIWA APA PUN
  • MENGUBAH OPSI SESI PERISTIWA APA PUN
  • MENGUBAH PERISTIWA PENAMBAHAN SESI PERISTIWA APA PUN
  • MENGUBAH PERISTIWA PENGHILANGAN SESI PERISTIWA APA PUN
  • MENGUBAH SESI PERISTIWA APA PUN YANG DIAKTIFKAN
  • MENGUBAH SESI PERISTIWA APA PUN NONAKTIF
  • MENGUBAH TARGET PENAMBAHAN SESI PERISTIWA APA PUN
  • MENGUBAH TARGET PENGHILANGAN SESI PERISTIWA APA PUN

Semua izin ini berada di bawah izin induk yang sama: MENGUBAH SESI PERISTIWA APA PUN

Tingkat database:

  • MEMBUAT SESI PERISTIWA DATABASE APA PUN
  • HILANGKAN SESI PERISTIWA DATABASE APA PUN
  • MENGUBAH OPSI SESI PERISTIWA DATABASE APA PUN
  • MENGUBAH PERISTIWA PENAMBAHAN SESI PERISTIWA DATABASE APA PUN
  • MENGUBAH PERISTIWA PENGHILANGAN SESI PERISTIWA DATABASE APA PUN
  • MENGUBAH SESI PERISTIWA DATABASE APA PUN YANG DIAKTIFKAN
  • MENGUBAH SESI PERISTIWA DATABASE APA PUN NONAKTIF
  • MENGUBAH TARGET PENAMBAHAN SESI PERISTIWA DATABASE APA PUN
  • MENGUBAH TARGET PENURUNAN SESI PERISTIWA DATABASE APA PUN

Semua izin ini berada di bawah izin induk yang sama: MENGUBAH SESI PERISTIWA DATABASE APA PUN

  • CONTROL (KREDENSIAL)
  • BUAT LOGIN
  • BUAT PENGGUNA
  • REFERENSI (KREDENSIAL)
  • UNMASK (OBJEK)
  • UNMASK (SKEMA)
  • LIHAT LOG KESALAHAN APA PUN
  • LIHAT AUDIT KEAMANAN SERVER
  • LIHAT AUDIT KEAMANAN DATABASE

Hak Akses Buku Besar

  • UBAH LEDGER
  • UBAH KONFIGURASI LEDGER
  • AKTIFKAN LEDGER
  • LIHAT KONTEN LEDGER

Izin database lainnya

  • MENGUBAH PEKERJAAN EKSTERNAL APA PUN
  • MENGUBAH ALIRAN EKSTERNAL APA PUN
  • JALANKAN TITIK AKHIR EKSTERNAL APA PUN

Ringkasan algoritma pemeriksaan izin

Memeriksa izin bisa kompleks. Algoritma pemeriksaan izin mencakup keanggotaan grup yang tumpang tindih dan rantai kepemilikan, izin eksplisit dan implisit, dan dapat dipengaruhi oleh izin pada kelas yang dapat diamankan yang berisi entitas yang dapat diamankan. Proses umum algoritma adalah mengumpulkan semua izin yang relevan. Jika tidak ada PENOLAKAN pemblokiran yang ditemukan, algoritma mencari GRANT yang menyediakan akses yang memadai. Algoritma berisi tiga elemen penting, konteks keamanan, ruang izin, dan izin yang diperlukan.

Note

Anda tidak dapat memberikan, menolak, atau mencabut izin ke sa, dbo, pemilik entitas, information_schema, sys, atau diri Anda sendiri.

  • Konteks keamanan

    Ini adalah grup prinsipal yang berkontribusi izin ke pemeriksaan akses. Ini adalah izin yang terkait dengan login atau pengguna saat ini, kecuali konteks keamanan diubah ke login atau pengguna lain dengan menggunakan pernyataan EXECUTE AS. Konteks keamanan mencakup prinsipal berikut:

    • Masuk

    • Pengguna

    • Keanggotaan peran

    • Keanggotaan grup Windows

    • Jika penandatanganan modul sedang digunakan, setiap login atau akun pengguna untuk sertifikat yang digunakan untuk menandatangani modul yang saat ini dijalankan pengguna, dan keanggotaan peran terkait dari prinsipal tersebut.

  • Ruang izin

    Ini adalah entitas yang dapat diamankan dan kelas yang dapat diamankan yang berisi yang dapat diamankan. Misalnya, tabel (entitas yang dapat diamankan) dimuat oleh kelas yang dapat diamankan skema dan oleh kelas yang dapat diamankan database. Akses dapat dipengaruhi oleh izin tingkat tabel, skema, database, dan server. Untuk informasi selengkapnya, lihat Hierarki Izin (Mesin Database).

  • Izin yang diperlukan

    Jenis izin yang diperlukan. Misalnya, INSERT, UPDATE, DELETE, SELECT, EXECUTE, ALTER, CONTROL, dan sebagainya.

    Access dapat memerlukan beberapa izin, seperti dalam contoh berikut:

    • Prosedur tersimpan dapat memerlukan izin EXECUTE pada prosedur tersimpan dan izin INSERT pada beberapa tabel yang dirujuk oleh prosedur tersimpan.

    • Tampilan manajemen dinamis dapat memerlukan izin TAMPILKAN STATUS SERVER dan SELECT pada tampilan.

Langkah-langkah umum algoritma

Ketika algoritma menentukan apakah akan mengizinkan akses ke yang dapat diamankan, langkah-langkah tepat yang digunakannya dapat bervariasi, tergantung pada prinsipal dan keamanan yang terlibat. Namun, algoritma melakukan langkah-langkah umum berikut:

  1. Lewati pemeriksaan izin apakah login adalah anggota peran server tetap sysadmin atau jika pengguna adalah pengguna dbo dalam database saat ini.

  2. Izinkan akses jika rantai kepemilikan berlaku dan pemeriksaan akses pada objek sebelumnya dalam rantai melewati pemeriksaan keamanan.

  3. Agregat identitas tingkat server, tingkat database, dan modul yang ditandatangani yang terkait dengan pemanggil untuk membuat konteks keamanan.

  4. Untuk konteks keamanan tersebut, kumpulkan semua izin yang diberikan atau ditolak untuk ruang izin. Izin dapat secara eksplisit dinyatakan sebagai GRANT, GRANT WITH GRANT, atau DENY; atau izin dapat berupa izin tersirat atau mencakup GRANT atau DENY. Misalnya, izin CONTROL pada skema menyiratkan CONTROL pada tabel. Dan CONTROL pada tabel menyiratkan SELECT. Oleh karena itu, jika CONTROL pada skema diberikan, SELECT pada tabel diberikan. Jika CONTROL ditolak pada tabel, SELECT pada tabel ditolak.

    Note

    HIBAH izin tingkat kolom mengambil alih TOLAK di tingkat objek. Untuk informasi selengkapnya, lihat MENOLAK Izin Objek.

  5. Identifikasi izin yang diperlukan.

  6. Gagalkan pemeriksaan izin apakah izin yang diperlukan secara langsung atau implisit ditolak ke salah satu identitas dalam konteks keamanan untuk objek di ruang izin.

  7. Teruskan pemeriksaan izin jika izin yang diperlukan tidak ditolak dan izin yang diperlukan berisi izin GRANT atau GRANT WITH GRANT baik secara langsung atau implisit ke salah satu identitas dalam konteks keamanan untuk objek apa pun di ruang izin.

Pertimbangan khusus untuk izin tingkat kolom

Izin tingkat kolom diberikan dengan sintaks <table_name>(<_name> kolom). Contohnya:

GRANT SELECT ON OBJECT::Customer(CustomerName) TO UserJoe;

TOLAK pada tabel ditimpa oleh GRANT pada kolom. Namun, TOLAK berikutnya pada tabel akan menghapus kolom GRANT.

Examples

Contoh di bagian ini menunjukkan cara mengambil informasi izin.

A. Mengembalikan daftar lengkap izin yang dapat diberikan

Pernyataan berikut mengembalikan semua izin Mesin Database dengan menggunakan fn_builtin_permissions fungsi . Untuk informasi selengkapnya, lihat sys.fn_builtin_permissions.

SELECT * FROM fn_builtin_permissions(default);
GO

B. Mengembalikan izin pada kelas objek tertentu

Contoh berikut menggunakan fn_builtin_permissions untuk melihat semua izin yang tersedia untuk kategori yang dapat diamankan. Contoh mengembalikan izin pada rakitan.

SELECT * FROM fn_builtin_permissions('assembly');
GO

C. Mengembalikan izin yang diberikan kepada prinsipal yang dieksekusi pada objek

Contoh berikut menggunakan fn_my_permissions untuk mengembalikan daftar izin efektif yang dipegang oleh prinsipal panggilan pada yang dapat diamankan tertentu. Contoh mengembalikan izin pada objek bernama Orders55. Untuk informasi selengkapnya, lihat sys.fn_my_permissions.

SELECT * FROM fn_my_permissions('Orders55', 'object');
GO

D. Mengembalikan izin yang berlaku untuk objek tertentu

Contoh berikut mengembalikan izin yang berlaku untuk objek yang disebut Yttrium. Fungsi bawaan OBJECT_ID digunakan untuk mengambil ID objek Yttrium.

SELECT * FROM sys.database_permissions
    WHERE major_id = OBJECT_ID('Yttrium');
GO