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: SQL Server
Azure SQL Managed Instance
Menolak izin yang diberikan pada login SQL Server.
Sintaks
DENY permission [ ,...n ] }
ON
{ [ LOGIN :: SQL_Server_login ]
| [ SERVER ROLE :: server_role ] }
TO <server_principal> [ ,...n ]
[ CASCADE ]
[ AS SQL_Server_login ]
<server_principal> ::=
SQL_Server_login
| SQL_Server_login_from_Windows_login
| SQL_Server_login_from_certificate
| SQL_Server_login_from_AsymKey
| server_role
Argumen
izin
Menentukan izin yang dapat ditolak pada login SQL Server. Untuk daftar izin, lihat bagian Keterangan nanti dalam topik ini.
LOGIN
::SQL_Server_login
Menentukan login SQL Server tempat izin ditolak. Kualifikasi cakupan (::) diperlukan.
SERVER ROLE
::server_role
Menentukan peran server tempat izin ditolak. Kualifikasi cakupan (::) diperlukan.
UNTUK <server_principal>
Menentukan peran masuk atau server SQL Server tempat izin diberikan.
UNTUK SQL_Server_login
Menentukan login SQL Server tempat izin ditolak.
SQL_Server_login
Menentukan nama login SQL Server.
SQL_Server_login_from_Windows_login
Menentukan nama login SQL Server yang dibuat dari login Windows.
SQL_Server_login_from_certificate
Menentukan nama login SQL Server yang dipetakan ke sertifikat.
SQL_Server_login_from_AsymKey
Menentukan nama login SQL Server yang dipetakan ke kunci asimetris.
server_role
Menentukan nama peran server.
CASCADE
Menunjukkan bahwa izin yang ditolak juga ditolak untuk prinsipal lain yang telah diberikan oleh prinsipal ini.
SEBAGAI SQL_Server_login
Menentukan login SQL Server tempat prinsipal menjalankan kueri ini memperoleh haknya untuk menolak izin.
Keterangan
Izin di cakupan server hanya dapat ditolak ketika database saat ini adalah master.
Informasi tentang izin server tersedia dalam tampilan katalog sys.server_permissions . Informasi tentang prinsipal server tersedia dalam tampilan katalog sys.server_principals .
Pernyataan gagal DENY jika CASCADE tidak ditentukan saat Anda menolak izin ke prinsipal yang diberikan izin tersebut dengan GRANT OPTION.
Login SQL Server dan peran server adalah keamanan tingkat server. Izin paling spesifik dan terbatas yang dapat ditolak pada login SQL Server atau peran server tercantum dalam tabel berikut, bersama dengan izin yang lebih umum yang menyertakannya berdasarkan implikasi.
| Masuk SQL Server atau izin peran server | Tersirat oleh login SQL Server atau izin peran server | Tersirat oleh izin server |
|---|---|---|
| CONTROL | CONTROL | SERVER KONTROL |
| MENIRU | CONTROL | SERVER KONTROL |
| VIEW DEFINISI | CONTROL | VIEW DEFINISI APA PUN |
| ALTER | CONTROL | MENGUBAH SEMUA LOGIN MENGUBAH SEMUA SERVER ROLE |
Izin
Untuk login, memerlukan izin KONTROL pada login atau izin ALTER ANY LOGIN di server.
Untuk peran server, memerlukan izin CONTROL pada peran server atau izin ALTER ANY SERVER ROLE di server.
Contoh
J. Menolak izin IMPERSONATE pada login
Contoh berikut menolak IMPERSONATE izin pada login WanidaBenshoof SQL Server ke login SQL Server yang dibuat dari pengguna AdvWorks\YoonMWindows .
USE master;
DENY IMPERSONATE ON LOGIN::WanidaBenshoof TO [AdvWorks\YoonM];
GO
B. Menolak VIEW izin DEFINITION dengan CASCADE
Contoh berikut menolak VIEW DEFINITION izin pada login EricKurjan SQL Server ke login RMeyyappanSQL Server . Opsi CASCADE menunjukkan bahwa VIEW DEFINITION izin pada juga akan ditolak EricKurjan untuk prinsipal yang RMeyyappan memberikan izin ini.
USE master;
DENY VIEW DEFINITION ON LOGIN::EricKurjan TO RMeyyappan
CASCADE;
GO
C. Menolak VIEW izin DEFINITION pada peran server
Contoh berikut menolak VIEW DEFINITIONSales peran server ke Auditors peran server.
USE master;
DENY VIEW DEFINITION ON SERVER ROLE::Sales TO Auditors ;
GO