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 Database
Azure SQL Managed Instance
SQL-database in Microsoft Fabric Preview
Weigert machtigingen die zijn verleend voor een databasegebruiker, databaserol of toepassingsrol in SQL Server.
Transact-SQL syntaxis-conventies
Syntax
DENY permission [ ,...n ]
ON
{ [ USER :: database_user ]
| [ ROLE :: database_role ]
| [ APPLICATION ROLE :: application_role ]
}
TO <database_principal> [ ,...n ]
[ CASCADE ]
[ AS <database_principal> ]
<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
Hiermee geeft u een machtiging op die kan worden geweigerd voor de database-principal. Zie de sectie Opmerkingen verderop in dit onderwerp voor een lijst met machtigingen.
USER ::database_user
Hiermee geeft u de klasse en naam van de gebruiker waarvoor de machtiging wordt geweigerd. De kwalificatie voor het bereik (::) is vereist.
ROLE ::database_role
Hiermee geeft u de klasse en naam van de rol waarvoor de machtiging wordt geweigerd. De kwalificatie voor het bereik (::) is vereist.
TOEPASSINGSROL ::application_role
Van toepassing op: SQL Server 2008 (10.0.x) en hoger, SQL Database.
Hiermee geeft u de klasse en naam op van de toepassingsrol waarvoor de machtiging wordt geweigerd. De kwalificatie voor het bereik (::) is vereist.
CASCADE
Geeft aan dat de machtiging die wordt geweigerd, ook wordt geweigerd aan andere principals waaraan deze principal is verleend.
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
Van toepassing op: SQL Server 2008 (10.0.x) en hoger, SQL Database.
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.
Remarks
Machtigingen voor databasegebruikers
Een databasegebruiker is een beveiligbaar databaseniveau dat is opgenomen in de database die bovenliggend is in de machtigingshiërarchie. De meest specifieke en beperkte machtigingen die voor een databasegebruiker kunnen worden geweigerd, worden vermeld in de volgende tabel, samen met de meer algemene machtigingen die deze door implicatie bevatten.
| Machtiging voor databasegebruiker | Impliciet door databasegebruikersmachtiging | Impliciet door databasemachtiging |
|---|---|---|
| CONTROL | CONTROL | CONTROL |
| IMPERSONATE | CONTROL | CONTROL |
| ALTER | CONTROL | WILLEKEURIGE GEBRUIKER WIJZIGEN |
| VIEW DEFINITION | CONTROL | VIEW DEFINITION |
Machtigingen voor databaserollen
Een databaserol is een beveiligbaar databaseniveau dat is opgenomen in de database die bovenliggend is in de machtigingshiërarchie. De meest specifieke en beperkte machtigingen die voor een databaserol kunnen worden geweigerd, worden vermeld in de volgende tabel, samen met de meer algemene machtigingen die deze door implicatie bevatten.
| Machtiging voor databaserol | Impliciet door machtiging voor databaserol | Impliciet door databasemachtiging |
|---|---|---|
| CONTROL | CONTROL | CONTROL |
| TAKE OWNERSHIP | CONTROL | CONTROL |
| ALTER | CONTROL | ELKE ROL WIJZIGEN |
| VIEW DEFINITION | CONTROL | VIEW DEFINITION |
Machtigingen voor toepassingsrol
Een toepassingsrol is een beveiligbaar databaseniveau dat is opgenomen in de database die bovenliggend is in de machtigingshiërarchie. De meest specifieke en beperkte machtigingen die kunnen worden geweigerd voor een toepassingsrol, worden vermeld in de volgende tabel, samen met de meer algemene machtigingen die deze door implicatie bevatten.
| Machtiging voor toepassingsrol | Impliciet door machtiging voor toepassingsrol | Impliciet door databasemachtiging |
|---|---|---|
| CONTROL | CONTROL | CONTROL |
| ALTER | CONTROL | ELKE TOEPASSINGSROL WIJZIGEN |
| VIEW DEFINITION | CONTROL | VIEW DEFINITION |
Permissions
Vereist control-machtiging voor de opgegeven principal of een hogere machtiging die CONTROL-machtiging impliceert.
Grantees van CONTROL-machtigingen voor een database, zoals leden van de db_owner vaste databaserol, kunnen elke machtiging voor een beveiligbare database in de database weigeren.
Examples
A. Control-machtiging voor een gebruiker weigeren voor een andere gebruiker
In het volgende voorbeeld wordt CONTROL de machtiging voor de gebruiker AdventureWorks2022 Wanida geweigerd RolandX.
USE AdventureWorks2022;
DENY CONTROL ON USER::Wanida TO RolandX;
GO
B. MACHTIGING WEERGAVEDEFINITIE weigeren voor een rol voor een gebruiker waaraan deze is verleend met GRANT OPTION
In het volgende voorbeeld wordt VIEW DEFINITION de machtiging voor de rol SammamishParking AdventureWorks2022 voor databasegebruiker JinghaoLiugeweigerd. De CASCADE optie is opgegeven omdat de gebruiker JinghaoLiu de MACHTIGING VIEW DEFINITION MET GRANT OPTION heeft gekregen.
USE AdventureWorks2022;
DENY VIEW DEFINITION ON ROLE::SammamishParking
TO JinghaoLiu CASCADE;
GO
C. IMITATIE-machtiging voor een gebruiker weigeren voor een toepassingsrol
In het volgende voorbeeld wordt de machtiging voor de gebruiker HamithaL voor de toepassingsrol IMPERSONATEAccountsPayable17AdventureWorks2022 geweigerd.
Van toepassing op: SQL Server 2008 (10.0.x) en hoger, SQL Database.
USE AdventureWorks2022;
DENY IMPERSONATE ON USER::HamithaL TO AccountsPayable17;
GO
See Also
database-principalmachtigingen verlenen (Transact-SQL)
Machtigingen voor database-principal intrekken (Transact-SQL)
sys.database_principals (Transact-SQL)
sys.database_permissions (Transact-SQL)
GEBRUIKER AANMAKEN (Transact-SQL)
TOEPASSINGSROL MAKEN (Transact-SQL)
ROL AANMAKEN (Transact-SQL)
GRANT (Transact-SQL)
Machtigingen (Database Engine)
Principals (Databasemotor)