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 Database
Azure SQL Managed Instance
Azure Synapse Analytics
Sistem Platform Analitik (PDW)
Titik akhir analitik SQL di Microsoft Fabric
Gudang di Microsoft Fabric
Database SQL di Microsoft Fabric
Menghapus izin yang diberikan atau ditolak sebelumnya.
Syntax
Sintaks untuk database SQL Server, Azure SQL Database, dan Fabric SQL
-- Simplified syntax for REVOKE
REVOKE [ GRANT OPTION FOR ]
{
[ ALL [ PRIVILEGES ] ]
|
permission [ ( column [ ,...n ] ) ] [ ,...n ]
}
[ ON [ class :: ] securable ]
{ TO | FROM } principal [ ,...n ]
[ CASCADE] [ AS principal ]
Sintaks untuk Azure Synapse Analytics, Gudang Data Paralel, dan gudang Microsoft Fabric
REVOKE
<permission> [ ,...n ]
[ ON [ <class_type> :: ] securable ]
[ FROM | TO ] principal [ ,...n ]
[ CASCADE ]
[;]
<permission> ::=
{ see the tables below }
<class_type> ::=
{
LOGIN
| DATABASE
| OBJECT
| ROLE
| SCHEMA
| USER
}
Arguments
GRANT OPSI UNTUK
Menunjukkan bahwa kemampuan untuk memberikan izin yang ditentukan akan dicabut. Ini diperlukan saat Anda menggunakan argumen CASCADE.
Important
Jika prinsipal memiliki izin yang ditentukan tanpa GRANT opsi, izin itu sendiri akan dicabut.
ALL
Berlaku untuk: SQL Server 2008 (10.0.x) dan yang lebih baru
Opsi ini tidak mencabut semua izin yang mungkin. Mencabut SEMUA setara dengan mencabut izin berikut.
Jika yang dapat diamankan adalah database, ALL berarti BACKUP, LOG, DATABASE, BACKUPCREATE DATABASECREATE DEFAULTCREATE FUNCTIONCREATE PROCEDUREdan .CREATE RULECREATE TABLECREATE VIEW
Jika yang dapat diamankan adalah fungsi skalar, SEMUA berarti EXECUTE dan REFERENCES.
Jika yang dapat diamankan adalah fungsi bernilai tabel, ALL berarti DELETE, INSERT, REFERENCES, SELECT, dan UPDATE.
Jika yang dapat diamankan adalah prosedur tersimpan, SEMUA berarti JALANKAN.
Jika yang dapat diamankan adalah tabel, ALL berarti DELETE, INSERT, REFERENCES, SELECT, dan UPDATE.
Jika yang dapat diamankan adalah tampilan, SEMUA berarti DELETE, INSERT, REFERENSI, PILIH, dan UPDATE.
Note
REVOKE Sintaks ALL tidak digunakan lagi. Fitur ini akan dihapus dalam versi SQL Server yang akan datang. Hindari menggunakan fitur ini dalam pekerjaan pengembangan baru, dan rencanakan untuk memodifikasi aplikasi yang saat ini menggunakan fitur ini. Cabut izin tertentu sebagai gantinya.
PRIVILEGES
Disertakan untuk kepatuhan ISO. Tidak mengubah perilaku ALL.
permission
Adalah nama izin. Pemetaan izin yang valid ke yang dapat diamankan dijelaskan dalam topik yang tercantum dalam Sintaksis Khusus yang Dapat Diamankan nanti dalam topik ini.
column
Menentukan nama kolom dalam tabel tempat izin dicabut. Tanda kurung diperlukan.
class
Menentukan kelas yang dapat diamankan tempat izin dicabut. Kualifikasi cakupan :: diperlukan.
securable
Menentukan yang dapat diamankan di mana izin sedang dicabut.
KE | DARI prinsipal
Adalah nama seorang prinsipal. Prinsipal tempat izin pada yang dapat diamankan dapat dicabut bervariasi, tergantung pada yang dapat diamankan. Untuk informasi selengkapnya tentang kombinasi yang valid, lihat topik yang tercantum dalam Sintaks khusus Yang Dapat Diamankan nanti dalam topik ini.
CASCADE
Menunjukkan bahwa izin yang dicabut juga dicabut dari prinsipal lain yang telah diberikan oleh prinsipal ini. Saat Anda menggunakan argumen CASCADE, Anda juga harus menyertakan GRANT argumen OPTION FOR.
Caution
Pencabutan berjenjang dari izin yang diberikan WITH GRANT OPTION akan mencabut kedua dan GRANTDENY izin tersebut.
SEBAGAI kepala sekolah
Gunakan klausul utama AS untuk menunjukkan bahwa Anda mencabut izin yang diberikan oleh prinsipal selain Anda. Misalnya, anggaplah bahwa pengguna Mary adalah principal_id 12 dan pengguna Raul adalah principal_id 15. Mary dan Raul memberikan pengguna bernama Steven izin yang sama. Tabel sys.database_permissions akan menunjukkan izin dua kali tetapi masing-masing akan memiliki nilai grantor_principal_id yang berbeda. Maria dapat mencabut izin menggunakan AS RAUL klausul untuk menghapus pemberian izin Raul.
Penggunaan AS dalam pernyataan ini tidak menyiratkan kemampuan untuk meniru pengguna lain.
Remarks
Sintaks REVOKE lengkap pernyataan itu kompleks. Diagram sintaks di atas disederhanakan untuk menarik perhatian pada strukturnya. Sintaks lengkap untuk mencabut izin pada securables tertentu dijelaskan dalam topik yang tercantum dalam Sintaksis Khusus Yang Dapat Diamankan nanti dalam topik ini.
Pernyataan REVOKE dapat digunakan untuk menghapus izin yang diberikan, dan DENY pernyataan dapat digunakan untuk mencegah prinsipal mendapatkan izin tertentu melalui GRANT.
Memberikan izin akan menghapus DENY atau REVOKE izin tersebut pada securable yang ditentukan. Jika izin yang sama ditolak pada cakupan yang lebih tinggi yang berisi yang dapat diamankan, yang DENY diutamakan. Namun, mencabut izin yang diberikan pada cakupan yang lebih tinggi tidak diutamakan.
Caution
Tingkat DENY tabel tidak lebih diutamakan daripada tingkat GRANTkolom . Ketidakkonsistensian dalam hierarki izin ini telah dipertahankan untuk kompatibilitas mundur. Ini akan dihapus dalam rilis mendatang.
Prosedur tersimpan sistem sp_helprotect melaporkan izin pada tingkat database yang dapat diamankan
Pernyataan akan REVOKE gagal jika CASCADE tidak ditentukan saat Anda mencabut izin dari prinsipal yang diberikan izin tersebut dengan GRANT OPTION yang ditentukan.
Permissions
Prinsipal dengan izin CONTROL pada yang dapat diamankan dapat mencabut izin pada yang dapat diamankan. Pemilik objek dapat mencabut izin pada objek yang mereka miliki.
Pemberi izin SERVER KONTROL, seperti anggota peran server tetap sysadmin, dapat mencabut izin apa pun pada setiap yang dapat diamankan di server. Pemberi izin CONTROL pada database, seperti anggota peran database tetap db_owner, dapat mencabut izin apa pun pada setiap yang dapat diamankan dalam database. Pemberi izin CONTROL pada skema dapat mencabut izin apa pun pada objek apa pun dalam skema.
Sintaks khusus yang dapat diamankan
Tabel berikut mencantumkan securables dan topik yang menjelaskan sintaksis khusus yang dapat diamankan.
Examples
A. Memberikan dan mencabut
Berlaku untuk: SQL Server, SQL Database
Contoh berikut membuat skema, pengguna database mandiri, dan peran baru pada database pengguna. Ini menambahkan pengguna ke peran, memberikan izin SELECT pada skema ke peran, lalu menghapus (REVOKE) izin tersebut ke peran tersebut.
CREATE SCHEMA Sales;
GO
CREATE USER Joe without login;
GO
CREATE ROLE Vendors;
GO
ALTER ROLE Vendors ADD MEMBER Joe;
GO
GRANT SELECT ON SCHEMA :: Sales TO Vendors;
GO
REVOKE SELECT ON SCHEMA :: Sales TO Vendors;
GO
Lihat Juga
Hierarki Izin (Mesin Database)
DENY (Transact-SQL)
GRANT (Transact-SQL)
sp_addlogin (T-SQL)
sp_adduser (T-SQL)
sp_changedbowner (T-SQL)
sp_dropuser (T-SQL)
sp_helprotect (T-SQL)
sp_helpuser (T-SQL)