Bagikan melalui


Deny Database Permissions (Transact-SQL)

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 Pratinjau Microsoft Fabric

Menolak izin pada database di SQL Server.

Konvensi sintaks transact-SQL

Syntax

DENY <permission> [ ,...n ]
    TO <database_principal> [ ,...n ] [ CASCADE ]
    [ AS <database_principal> ]

<permission> ::=
    permission | ALL [ PRIVILEGES ]

<database_principal> ::=
    Database_user
  | Database_role
  | Application_role
  | Database_user_mapped_to_Windows_User
  | Database_user_mapped_to_Windows_Group
  | Database_user_mapped_to_certificate
  | Database_user_mapped_to_asymmetric_key
  | Database_user_with_no_login

Arguments

izin Menentukan izin yang dapat ditolak pada database. Untuk daftar izin, lihat bagian Keterangan nanti dalam topik ini.

SEMUA Opsi ini tidak menolak semua izin yang mungkin. Menolak SEMUA setara dengan menolak izin berikut: BACKUP DATABASE, BACKUP LOG, CREATE DATABASE, CREATE DEFAULT, CREATE FUNCTION, CREATE PROCEDURE, CREATE RULE, CREATE TABLE, dan CREATE VIEW.

HAK ISTIMEWA Disertakan untuk kepatuhan ISO. Tidak mengubah perilaku ALL.

CASCADE Menunjukkan bahwa izin juga akan ditolak untuk prinsipal tempat prinsipal yang ditentukan memberikannya.

AS <database_principal> Menentukan prinsipal dari mana prinsipal yang menjalankan kueri ini memperoleh haknya untuk menolak izin.

Database_user Menentukan pengguna database.

Database_role Menentukan peran database.

Application_role Berlaku untuk: SQL Server 2008 (10.0.x) dan yang lebih baru, SQL Database.

Menentukan peran aplikasi.

Database_user_mapped_to_Windows_User Menentukan pengguna database yang dipetakan ke pengguna Windows.

Database_user_mapped_to_Windows_Group Menentukan pengguna database yang dipetakan ke grup Windows.

Database_user_mapped_to_certificate Menentukan pengguna database yang dipetakan ke sertifikat.

Database_user_mapped_to_asymmetric_key Menentukan pengguna database yang dipetakan ke kunci asimetris.

Database_user_with_no_login Menentukan pengguna database tanpa prinsipal tingkat server yang sesuai.

Remarks

Database adalah yang dapat diamankan yang dimuat oleh server yang merupakan induknya dalam hierarki izin. Izin paling spesifik dan terbatas yang dapat ditolak pada database tercantum dalam tabel berikut, bersama dengan izin yang lebih umum yang menyertakannya berdasarkan implikasi.

Database permission Tersirat oleh izin database Tersirat oleh izin server
Mengelola Operasi Massal Basis Data
Berlaku untuk: SQL Database.
CONTROL CONTROL SERVER
ALTER CONTROL MENGUBAH SEMUA DATABASE
MENGUBAH PERAN APLIKASI APA PUN ALTER CONTROL SERVER
MENGUBAH RAKITAN APA PUN ALTER CONTROL SERVER
MENGUBAH KUNCI ASIMETRIS APA PUN ALTER CONTROL SERVER
MENGUBAH SERTIFIKAT APA PUN ALTER CONTROL SERVER
MENGUBAH KUNCI ENKRIPSI KOLOM APA PUN ALTER CONTROL SERVER
MENGUBAH DEFINISI KUNCI MASTER KOLOM APA PUN ALTER CONTROL SERVER
MENGUBAH KONTRAK APA PUN ALTER CONTROL SERVER
MENGUBAH AUDIT DATABASE APA PUN ALTER MENGUBAH AUDIT SERVER APA PUN
MENGUBAH PEMICU DDL DATABASE APA PUN ALTER CONTROL SERVER
MENGUBAH PEMBERITAHUAN PERISTIWA DATABASE APA PUN ALTER MENGUBAH PEMBERITAHUAN PERISTIWA APA PUN
MENGUBAH SESI PERISTIWA DATABASE APA PUN
Berlaku untuk: Azure SQL Database.
ALTER MENGUBAH SESI PERISTIWA APA PUN
MENGUBAH KONFIGURASI CAKUPAN DATABASE APA PUN
Berlaku untuk: SQL Server 2016 (13.x) dan yang lebih baru, SQL Database.
CONTROL CONTROL SERVER
MENGUBAH RUANG DATA APA PUN ALTER CONTROL SERVER
UBAH SUMBER DATA EKSTERNAL APA PUN ALTER CONTROL SERVER
MENGUBAH FORMAT FILE EKSTERNAL APAPUN ALTER CONTROL SERVER
MENGUBAH PUSTAKA EKSTERNAL APA PUN
Berlaku untuk: SQL Server 2017 (14.x).
CONTROL CONTROL SERVER
MENGUBAH KATALOG FULLTEXT APA PUN ALTER CONTROL SERVER
UBAH MASKER APA PUN CONTROL CONTROL SERVER
UBAH JENIS PESAN APA PUN ALTER CONTROL SERVER
MENGUBAH PENGIKATAN LAYANAN JARAK JAUH APA PUN ALTER CONTROL SERVER
MENGUBAH PERAN APA PUN ALTER CONTROL SERVER
MENGUBAH RUTE APA PUN ALTER CONTROL SERVER
MENGUBAH KEBIJAKAN KEAMANAN APA PUN
Berlaku untuk: SQL Server 2016 (13.x) dan yang lebih baru, Azure SQL Database.
CONTROL CONTROL SERVER
MENGUBAH SKEMA MANAPUN ALTER CONTROL SERVER
MENGUBAH LAYANAN APA PUN ALTER CONTROL SERVER
MENGUBAH KUNCI SIMETRIS APA PUN ALTER CONTROL SERVER
MENGUBAH PENGGUNA APA PUN ALTER CONTROL SERVER
AUTHENTICATE CONTROL AUTHENTICATE SERVER
BACKUP DATABASE CONTROL CONTROL SERVER
BACKUP LOG CONTROL CONTROL SERVER
CHECKPOINT CONTROL CONTROL SERVER
CONNECT CONNECT REPLICATION CONTROL SERVER
CONNECT REPLICATION CONTROL CONTROL SERVER
CONTROL CONTROL CONTROL SERVER
CREATE AGGREGATE ALTER CONTROL SERVER
CREATE ASSEMBLY MENGUBAH RAKITAN APA PUN CONTROL SERVER
MEMBUAT KUNCI ASIMETRIS MENGUBAH KUNCI ASIMETRIS APA PUN CONTROL SERVER
CREATE CERTIFICATE MENGUBAH SERTIFIKAT APA PUN CONTROL SERVER
CREATE CONTRACT MENGUBAH KONTRAK APA PUN CONTROL SERVER
CREATE DATABASE CONTROL MEMBUAT DATABASE APA PUN
MEMBUAT PEMBERITAHUAN PERISTIWA DDL DATABASE MENGUBAH PEMBERITAHUAN PERISTIWA DATABASE APA PUN MEMBUAT PEMBERITAHUAN PERISTIWA DDL
CREATE DEFAULT ALTER CONTROL SERVER
BUAT KATALOG FULLTEXT MENGUBAH KATALOG FULLTEXT APA PUN CONTROL SERVER
CREATE FUNCTION ALTER CONTROL SERVER
MEMBUAT JENIS PESAN UBAH JENIS PESAN APA PUN CONTROL SERVER
CREATE PROCEDURE ALTER CONTROL SERVER
CREATE QUEUE ALTER CONTROL SERVER
MEMBUAT PENGIKATAN LAYANAN JARAK JAUH MENGUBAH PENGIKATAN LAYANAN JARAK JAUH APA PUN CONTROL SERVER
CREATE ROLE MENGUBAH PERAN APA PUN CONTROL SERVER
CREATE ROUTE MENGUBAH RUTE APA PUN CONTROL SERVER
CREATE RULE ALTER CONTROL SERVER
CREATE SCHEMA MENGUBAH SKEMA MANAPUN CONTROL SERVER
CREATE SERVICE MENGUBAH LAYANAN APA PUN CONTROL SERVER
MEMBUAT KUNCI SIMETRIS MENGUBAH KUNCI SIMETRIS APA PUN CONTROL SERVER
CREATE SYNONYM ALTER CONTROL SERVER
CREATE TABLE ALTER CONTROL SERVER
CREATE TYPE ALTER CONTROL SERVER
CREATE VIEW ALTER CONTROL SERVER
MEMBUAT KOLEKSI SKEMA XML ALTER CONTROL SERVER
DELETE CONTROL CONTROL SERVER
EXECUTE CONTROL CONTROL SERVER
JALANKAN SKRIP EKSTERNAL APA PUN
Berlaku untuk: SQL Server 2016 (13.x).
CONTROL CONTROL SERVER
INSERT CONTROL CONTROL SERVER
Hentikan Koneksi Basis Data
Berlaku untuk: Azure SQL Database.
CONTROL MENGUBAH KONEKSI APA PUN
REFERENCES CONTROL CONTROL SERVER
SELECT CONTROL CONTROL SERVER
SHOWPLAN CONTROL ALTER TRACE
BERLANGGANAN PEMBERITAHUAN KUERI CONTROL CONTROL SERVER
TAKE OWNERSHIP CONTROL CONTROL SERVER
UNMASK CONTROL CONTROL SERVER
UPDATE CONTROL CONTROL SERVER
LIHAT KUNCI ENKRIPSI KOLOM APA PUN CONTROL LIHAT DEFINISI APA PUN
LIHAT DEFINISI KUNCI MASTER APA PUN CONTROL LIHAT DEFINISI APA PUN
TAMPILKAN STATUS DATABASE CONTROL LIHAT STATUS SERVER
VIEW DEFINITION CONTROL LIHAT DEFINISI APA PUN

Permissions

Prinsipal yang menjalankan pernyataan ini (atau prinsipal yang ditentukan dengan opsi AS) harus memiliki izin CONTROL pada database atau izin yang lebih tinggi yang menyiratkan izin CONTROL pada database.

Jika Anda menggunakan opsi AS, prinsipal yang ditentukan harus memiliki database.

Examples

A. Menolak izin untuk membuat sertifikat

Contoh berikut menolak CREATE CERTIFICATE izin pada AdventureWorks2022 database kepada pengguna MelanieK.

USE AdventureWorks2022;
DENY CREATE CERTIFICATE TO MelanieK;
GO

B. Menolak izin REFERENSI ke peran aplikasi

Contoh berikut menolak REFERENCES izin pada database ke AdventureWorks2022 peran AuditMonitoraplikasi .

Berlaku untuk: SQL Server 2008 (10.0.x) dan yang lebih baru, SQL Database.

USE AdventureWorks2022;
DENY REFERENCES TO AuditMonitor;
GO

C. Menolak DEFINISI TAMPILAN dengan CASCADE

Contoh berikut menolak VIEW DEFINITION izin pada AdventureWorks2022 database kepada pengguna CarmineEs dan semua prinsipal yang CarmineEs telah memberikan VIEW DEFINITION izin.

USE AdventureWorks2022;
DENY VIEW DEFINITION TO CarmineEs CASCADE;
GO

See Also