Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Van toepassing op:SQL Server
Azure SQL Managed Instance
Trekt de rechten in op een tabel, weergave, tabel-waarde functie, opgeslagen procedure, uitgebreide opgeslagen procedure, scalaire functie, aggregate functie, servicewachtrij of synoniem.
Transact-SQL syntaxis-conventies
Syntaxis
REVOKE [ GRANT OPTION FOR ] <permission> [ ,...n ] ON
[ OBJECT :: ][ schema_name ]. object_name [ ( column [ ,...n ] ) ]
{ FROM | TO } <database_principal> [ ,...n ]
[ CASCADE ]
[ AS <database_principal> ]
<permission> ::=
ALL [ PRIVILEGES ] | permission [ ( column [ ,...n ] ) ]
<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
permission
Specificeert een toestemming die kan worden ingetrokken op een schema-contained object. Zie de sectie Opmerkingen verderop in dit onderwerp voor een lijst met machtigingen.
ALL
ALLE intrekken trekt niet alle mogelijke rechten in. Het intrekken van ALL is gelijk aan het intrekken van alle ANSI-92-rechten die van toepassing zijn op het opgegeven object. De betekenis van ALL varieert als volgt:
Scalaire functiemachtigingen: EXECUTE, REFERENCES.
Functiemachtigingen met tabelwaarde: DELETE, INSERT, REFERENCES, SELECT, UPDATE.
Machtigingen voor opgeslagen procedures: EXECUTE.
Tabelmachtigingen: VERWIJDEREN, INVOEGEN, VERWIJZINGEN, SELECTEREN, BIJWERKEN.
Machtigingen weergeven: VERWIJDEREN, INVOEGEN, VERWIJZINGEN, SELECTEREN, BIJWERKEN.
PRIVILEGES
Opgenomen voor ANSI-92-naleving. Het gedrag van ALL wordt niet gewijzigd.
kolom
Specificeert de naam van een kolom in een tabel, weergave of tabelwaardige functie waarvoor de toestemming wordt ingetrokken. De haakjes ( ) zijn vereist. Alleen SELECT-, VERWIJZINGEN- en UPDATE-machtigingen kunnen worden geweigerd voor een kolom.
kolom kan worden opgegeven in de machtigingscomponent of na de beveiligbare naam.
OP [ OBJECT :: ] [ schema_name ] .
object_name
Specificeert het object waarop de toestemming wordt ingetrokken. De objectterm is optioneel als schema_name is opgegeven. Als de OBJECT-woordgroep wordt gebruikt, is de bereikkwalificatie (::) vereist. Als schema_name niet is opgegeven, wordt het standaardschema gebruikt. Als schema_name is gespecificeerd, is de schemascope-kwalificatie (.) vereist.
{ VAN | TO } <database_principal> Specificeert de principe waarvan de toestemming wordt ingetrokken.
SUBSIDIEOPTIE
Geeft aan dat het recht om de opgegeven machtiging aan andere principals te verlenen, wordt ingetrokken. De machtiging zelf wordt niet ingetrokken.
Belangrijk
Als de principal de opgegeven machtiging heeft zonder de optie GRANT, wordt de machtiging zelf ingetrokken.
CASCADE
Geeft aan dat de ingetrokken machtiging ook wordt ingetrokken van andere principals waaraan deze is verleend of geweigerd door deze principal.
Waarschuwing
Een trapsgewijs intrekken van een machtiging die MET GRANT OPTION wordt verleend, trekt zowel GRANT als DENY van die machtiging in.
AS <database_principal> Hiermee geeft u een principal op waaruit de principal die deze query uitvoert, het recht heeft om de machtiging in te trekken.
Database_user
Hiermee geeft u een databasegebruiker.
Database_role
Hiermee geeft u een databaserol op.
Application_role
Hiermee geeft u een toepassingsrol op.
Database_user_mapped_to_Windows_User
Hiermee geeft u een databasegebruiker die is toegewezen aan een Windows-gebruiker.
Database_user_mapped_to_Windows_Group
Hiermee geeft u een databasegebruiker die is toegewezen aan een Windows-groep.
Database_user_mapped_to_certificate
Hiermee geeft u een databasegebruiker die is toegewezen aan een certificaat.
Database_user_mapped_to_asymmetric_key
Hiermee geeft u een databasegebruiker die is toegewezen aan een asymmetrische sleutel.
Database_user_with_no_login
Hiermee geeft u een databasegebruiker zonder bijbehorende principal op serverniveau op.
Opmerkingen
Informatie over objecten is zichtbaar in verschillende catalogusweergaven. Zie Objectcatalogusweergaven (Transact-SQL) voor meer informatie.
Een object is een beveiligbaar op schemaniveau dat is opgenomen in het schema dat het bovenliggende object in de machtigingshiërarchie is. De meest specifieke en beperkte rechten die op een object kunnen worden ingetrokken, worden in de volgende tabel vermeld, samen met de meer algemene rechten die deze bij implicatie omvatten.
| Objecttoestemming | Impliciet op objectmachtiging | Impliciet door schemamachtiging |
|---|---|---|
| WIJZIGEN | CONTROLE | WIJZIGEN |
| CONTROLE | CONTROLE | CONTROLE |
| Verwijderen | CONTROLE | Verwijderen |
| EXECUTE | CONTROLE | EXECUTE |
| INSERT | CONTROLE | INSERT |
| RECEIVE | CONTROLE | CONTROLE |
| REFERENCES | CONTROLE | REFERENCES |
| SELECT | RECEIVE | SELECT |
| EIGENAARSCHAP NEMEN | CONTROLE | CONTROLE |
| UPDATE | CONTROLE | UPDATE |
| WIJZIGINGEN BIJHOUDEN WEERGEVEN | CONTROLE | WIJZIGINGEN BIJHOUDEN WEERGEVEN |
| DEFINITIE WEERGEVEN | CONTROLE | DEFINITIE WEERGEVEN |
Permissions
Hiervoor is de CONTROL-machtiging voor het object vereist.
Als je de AS-clausule gebruikt, moet de gespecificeerde principal eigenaar zijn van het object waarop de rechten worden ingetrokken.
Voorbeelden
Eén. Het intrekken van de SELECT-toestemming op een tabel
Het volgende voorbeeld trekt SELECT de gebruiker de toestemming in de tabel RosaQdMPerson.Address in de AdventureWorks2025 database in.
USE AdventureWorks2022;
REVOKE SELECT ON OBJECT::Person.Address FROM RosaQdM;
GO
B. Het intrekken van de uitvoeringsrechten op een opgeslagen procedure
Het volgende voorbeeld trekt EXECUTE de toestemming in voor de opgeslagen procedure HumanResources.uspUpdateEmployeeHireInfo van een applicatierol genaamd Recruiting11.
USE AdventureWorks2022;
REVOKE EXECUTE ON OBJECT::HumanResources.uspUpdateEmployeeHireInfo
FROM Recruiting11;
GO
C. REFERENTIES-toestemming intrekken op een weergave met CASCADE
Het volgende voorbeeld trekt REFERENCES de toestemming voor de kolom BusinessEntityID in de weergave HumanResources.vEmployee van de gebruiker Wanida met CASCADEin.
USE AdventureWorks2022;
REVOKE REFERENCES (BusinessEntityID) ON OBJECT::HumanResources.vEmployee
FROM Wanida CASCADE;
GO
Zie ook
objectmachtigingen verlenen (Transact-SQL)
Objectmachtigingen Weigeren (Transact-SQL)
objectcatalogusweergaven (Transact-SQL)
Machtigingen (Database Engine)
Principals (Databasemotor)
Securables
sys.fn_builtin_permissions (Transact-SQL)
HAS_PERMS_BY_NAME (Transact-SQL)
sys.fn_my_permissions (Transact-SQL)