Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Gäller för:SQL Server
Azure SQL Database
Azure SQL Managed Instance
SQL-databas i Förhandsversion av Microsoft Fabric
Nekar behörigheter som beviljas för en databasanvändare, databasroll eller programroll i SQL Server.
Transact-SQL syntaxkonventioner
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
Anger en behörighet som kan nekas för databasens huvudnamn. En lista över behörigheterna finns i avsnittet Kommentarer senare i det här avsnittet.
USER ::database_user
Anger klassen och namnet på den användare där behörigheten nekas. Omfångskvalificeraren (::) krävs.
ROLE ::database_role
Anger klassen och namnet på den roll där behörigheten nekas. Omfångskvalificeraren (::) krävs.
PROGRAMROLL ::application_role
Gäller för: SQL Server 2008 (10.0.x) och senare SQL Database.
Anger klassen och namnet på den programroll där behörigheten nekas. Omfångskvalificeraren (::) krävs.
CASCADE
Anger att behörigheten som nekas också nekas till andra huvudnamn som det har beviljats av det här huvudkontot.
AS-database_principal <>
Anger ett huvudnamn från vilket huvudnamnet som kör den här frågan härleder sin rätt att återkalla behörigheten.
Database_user
Anger en databasanvändare.
Database_role
Anger en databasroll.
Application_role
Gäller för: SQL Server 2008 (10.0.x) och senare SQL Database.
Anger en programroll.
Database_user_mapped_to_Windows_User
Anger en databasanvändare som mappats till en Windows-användare.
Database_user_mapped_to_Windows_Group
Anger en databasanvändare som mappats till en Windows-grupp.
Database_user_mapped_to_certificate
Anger en databasanvändare som mappats till ett certifikat.
Database_user_mapped_to_asymmetric_key
Anger en databasanvändare som mappats till en asymmetrisk nyckel.
Database_user_with_no_login
Anger en databasanvändare utan motsvarande huvudnamn på servernivå.
Remarks
Databasanvändarbehörigheter
En databasanvändare är en databasnivå som kan säkras av databasen som är dess överordnade i behörighetshierarkin. De mest specifika och begränsade behörigheter som kan nekas för en databasanvändare visas i följande tabell, tillsammans med de mer allmänna behörigheter som omfattar dem underförstått.
| Databasanvändarbehörighet | Underförstådd av databasanvändarbehörighet | Underförstådd av databasbehörighet |
|---|---|---|
| CONTROL | CONTROL | CONTROL |
| IMPERSONATE | CONTROL | CONTROL |
| ALTER | CONTROL | ÄNDRA ALLA ANVÄNDARE |
| VIEW DEFINITION | CONTROL | VIEW DEFINITION |
Behörigheter för databasroll
En databasroll är en databasnivå som kan säkras av databasen som är dess överordnade i behörighetshierarkin. De mest specifika och begränsade behörigheter som kan nekas för en databasroll visas i följande tabell, tillsammans med de mer allmänna behörigheter som omfattar dem underförstått.
| Behörighet för databasroll | Underförstådd av behörighet för databasroll | Underförstådd av databasbehörighet |
|---|---|---|
| CONTROL | CONTROL | CONTROL |
| TAKE OWNERSHIP | CONTROL | CONTROL |
| ALTER | CONTROL | ÄNDRA VILKEN ROLL SOM HELST |
| VIEW DEFINITION | CONTROL | VIEW DEFINITION |
Behörigheter för programroller
En programroll är en databasnivå som kan säkras av databasen som är dess överordnade i behörighetshierarkin. De mest specifika och begränsade behörigheter som kan nekas för en programroll visas i följande tabell, tillsammans med de mer allmänna behörigheter som omfattar dem underförstått.
| Behörighet för programroll | Underförstådd av programrollbehörighet | Underförstådd av databasbehörighet |
|---|---|---|
| CONTROL | CONTROL | CONTROL |
| ALTER | CONTROL | ÄNDRA VILKEN PROGRAMROLL SOM HELST |
| VIEW DEFINITION | CONTROL | VIEW DEFINITION |
Permissions
Kräver KONTROLL-behörighet för det angivna huvudkontot eller en högre behörighet som innebär KONTROLL-behörighet.
Beviljare av CONTROL-behörighet för en databas, till exempel medlemmar i db_owner fast databasroll, kan neka alla behörigheter som kan säkras i databasen.
Examples
A. Neka BEHÖRIGHETSKONTROLL för en användare till en annan användare
I följande exempel nekas CONTROL behörighet för AdventureWorks2022-användaren Wanida till användaren RolandX.
USE AdventureWorks2022;
DENY CONTROL ON USER::Wanida TO RolandX;
GO
B. Neka behörigheten VIEW DEFINITION för en roll till en användare som den har beviljats med ALTERNATIVET BEVILJA
I följande exempel nekas VIEW DEFINITION behörighet för rollen SammamishParking AdventureWorks2022 till databasanvändaren JinghaoLiu. Alternativet CASCADE anges eftersom användaren JinghaoLiu har beviljats BEHÖRIGHETEN VISA DEFINITION MED ALTERNATIVET BEVILJA.
USE AdventureWorks2022;
DENY VIEW DEFINITION ON ROLE::SammamishParking
TO JinghaoLiu CASCADE;
GO
C. Neka IMPERSONATE-behörighet för en användare till en programroll
I följande exempel nekas IMPERSONATE behörighet för användaren HamithaL till programrollen AccountsPayable17AdventureWorks2022 .
Gäller för: SQL Server 2008 (10.0.x) och senare SQL Database.
USE AdventureWorks2022;
DENY IMPERSONATE ON USER::HamithaL TO AccountsPayable17;
GO
See Also
BEVILJA behörigheter för databasens huvudnamn (Transact-SQL)
ÅTERKALLA behörigheter för databasens huvudnamn (Transact-SQL)
sys.database_principals (Transact-SQL)
sys.database_permissions (Transact-SQL)
SKAPA ANVÄNDARE (Transact-SQL)
SKAPA PROGRAMROLL (Transact-SQL)
SKAPA ROLL (Transact-SQL)
GRANT (Transact-SQL)
Behörigheter (Databasmotor)
huvudnamn (databasmotor)