Delen via


Machtiging weigeren (Transact-SQL)

Van toepassing op:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceSQL-database in Microsoft Fabric Preview

Machtigingen voor een type in SQL Server worden geweigerd.

Transact-SQL syntaxis-conventies

Syntax

DENY permission  [ ,...n ] ON TYPE :: [ schema_name . ] type_name  
        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 die kan worden geweigerd voor een type. Zie de sectie Opmerkingen verderop in dit onderwerp voor een lijst met machtigingen.

BIJ TYPE :: [ schema_name. ] type_name
Hiermee geeft u het type waarop de machtiging wordt geweigerd. De kwalificatie voor het bereik (::) is vereist. Als schema_name niet is opgegeven, wordt het standaardschema gebruikt. Als schema_name is opgegeven, is de kwalificatie voor schemabereik (.) vereist.

TO <database_principal>
Hiermee geeft u de principal op waarop de machtiging wordt geweigerd.

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 te weigeren.

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.

Remarks

Een type is een beveiligbaar schemaniveau dat is opgenomen in het schema dat het bovenliggende element in de machtigingshiërarchie is.

Important

MACHTIGINGEN VERLENEN, WEIGEREN en INTREKKEN zijn niet van toepassing op systeemtypen. Door de gebruiker gedefinieerde typen kunnen machtigingen worden verleend. Zie Werken met User-Defined Typen in SQL Server voor meer informatie over door de gebruiker gedefinieerde typen.

De meest specifieke en beperkte machtigingen die voor een type kunnen worden geweigerd, worden vermeld in de volgende tabel, samen met de meer algemene machtigingen die deze door implicatie bevatten.

Type permission Impliciet op typemachtiging Impliciet door schemamachtiging
CONTROL CONTROL CONTROL
EXECUTE CONTROL EXECUTE
REFERENCES CONTROL REFERENCES
TAKE OWNERSHIP CONTROL CONTROL
VIEW DEFINITION CONTROL VIEW DEFINITION

Permissions

Vereist control-machtiging voor het type. Als u de AS-component gebruikt, moet de opgegeven principal eigenaar zijn van het type waarvoor machtigingen worden geweigerd.

Examples

In het volgende voorbeeld wordt VIEW DEFINITION de machtiging voor CASCADE het door de gebruiker gedefinieerde type PhoneNumber geweigerd voor het KhalidR. PhoneNumber bevindt zich in schema Telemarketing.

DENY VIEW DEFINITION ON TYPE::Telemarketing.PhoneNumber   
    TO KhalidR CASCADE;  
GO  

See Also

type machtigingen verlenen (Transact-SQL)
Machtigingen voor HET INTREKKEN van het type (Transact-SQL)
CREATE TYPE (Transact-SQL)
Principals (Databasemotor)
Machtigingen (Database Engine)
Securables