Delen via


GRANT Type Permissions (Transact-SQL)

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

Verleent rechten op een type.

Transact-SQL syntaxis-conventies

Syntaxis

GRANT permission  [ ,...n ] ON TYPE :: [ schema_name . ] type_name  
    TO <database_principal> [ ,...n ]  
    [ WITH GRANT OPTION ]  
    [ 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

toestemming
Specificeert een toestemming die op een type kan worden verleend. Voor een lijst van de toestemmingen, zie de sectie Opmerkingen later in dit onderwerp.

OP TYPE :: [ schema_name. ] type_name
Geeft het type aan waarop de toestemming wordt verleend. De scope-kwalificaat (::) is vereist. Als schema_name niet wordt gespecificeerd, wordt het standaardschema gebruikt. Als schema_name wordt gespecificeerd, is de schema scope qualifier (.) vereist.

TO <database_principal> Specificeert de principe aan wie de toestemming wordt verleend.

MET SUBSIDIEOPTIE
Geeft aan dat de principal ook de bevoegdheid krijgt om de gespecificeerde toestemming aan andere principals te geven.

AS <database_principal> Specificeert een principaal waaruit de principal die deze query uitvoert zijn recht afleidt om de toestemming te verlenen.

Database_user
Specificeert een databasegebruiker.

Database_role
Specificeert een databaserol.

Application_role
Van toepassing op: SQL Server 2008 (10.0.x) en later, SQL Database

Specificeert een applicatierol.

Database_user_mapped_to_Windows_User
Van toepassing op: SQL Server 2008 (10.0.x) en later

Specificeert een databasegebruiker die is toegewezen aan een Windows-gebruiker.

Database_user_mapped_to_Windows_Group
Van toepassing op: SQL Server 2008 (10.0.x) en later

Specificeert een databasegebruiker die aan een Windows-groep is toegewezen.

Database_user_mapped_to_certificate
Van toepassing op: SQL Server 2008 (10.0.x) en later

Specificeert een databasegebruiker die aan een certificaat is gekoppeld.

Database_user_mapped_to_asymmetric_key
Van toepassing op: SQL Server 2008 (10.0.x) en later

Specificeert een databasegebruiker die is toegewezen aan een asymmetrische sleutel.

Database_user_with_no_login
Specificeert een databasegebruiker zonder een bijbehorende server-level principal.

Opmerkingen

Een type is een schema-niveau securable die wordt opgenomen in het schema dat zijn ouder is in de permissiehiƫrarchie.

Belangrijk

GRANT-, DENY- en RETREKE-rechten zijn niet van toepassing op systeemtypen. Door de gebruiker gedefinieerde types kunnen rechten krijgen. Voor meer informatie over door de gebruiker gedefinieerde types, zie Working with User-Defined Types in SQL Server.

De meest specifieke en beperkte rechten die op een type kunnen worden verleend, worden in de volgende tabel vermeld, samen met de meer algemene rechten die deze bij implicatie omvatten.

Type-toestemming Impliciet door typetoestemming Impliciet door schema-toestemming
CONTROL CONTROL CONTROL
EXECUTE CONTROL EXECUTE
REFERENCES CONTROL REFERENCES
EIGENAAR CONTROL CONTROL
DEFINITIE WEERGEVEN CONTROL DEFINITIE WEERGEVEN

Permissions

De verstrekker (of de opdrachtgever gespecificeerd met de AS-optie) moet ofwel de toestemming zelf met GRANT OPTION hebben, of een hogere toestemming die impliceert dat de toestemming wordt verleend.

Als je de AS-optie gebruikt, gelden de volgende aanvullende vereisten.

ALS Extra toestemming vereist
Databasegebruiker IMITEER van de gebruiker van de toestemming, lidmaatschap van de db_securityadmin vaste databaserol, lidmaatschap van de db_owner vaste databaserol, of lidmaatschap van de sysadmin-vaste serverrol.
Databasegebruiker gekoppeld aan een Windows-login IMITEER van de gebruiker van de toestemming, lidmaatschap van de db_securityadmin vaste databaserol, lidmaatschap van de db_owner vaste databaserol, of lidmaatschap van de sysadmin-vaste serverrol.
Databasegebruiker gekoppeld aan een Windows-groep Lidmaatschap van de Windows-groep, lidmaatschap van de db_securityadmin vaste databaserol, lidmaatschap van de db_owner vaste databaserol, of lidmaatschap van de sysadmin vaste serverrol.
Databasegebruiker gekoppeld aan een certificaat Lidmaatschap van de db_securityadmin vaste databaserol, lidmaatschap van de db_owner vaste databaserol, of lidmaatschap van de sysadmin vaste serverrol.
Databasegebruiker toegewezen aan een asymmetrische sleutel Lidmaatschap van de db_securityadmin vaste databaserol, lidmaatschap van de db_owner vaste databaserol, of lidmaatschap van de sysadmin vaste serverrol.
Databasegebruiker niet toegewezen aan een serverprincipal IMITEER van de gebruiker van de toestemming, lidmaatschap van de db_securityadmin vaste databaserol, lidmaatschap van de db_owner vaste databaserol, of lidmaatschap van de sysadmin-vaste serverrol.
Databaserol ALTER-toestemming voor de rol, lidmaatschap in de db_securityadmin vaste databaserol, lidmaatschap van de db_owner vaste databaserol, of lidmaatschap van de sysadmin vaste serverrol.
Toepassingsrol ALTER-toestemming voor de rol, lidmaatschap in de db_securityadmin vaste databaserol, lidmaatschap van de db_owner vaste databaserol, of lidmaatschap van de sysadmin vaste serverrol.

Voorbeelden

Het volgende voorbeeld verleent VIEW DEFINITION toestemming met GRANT OPTION op het door de gebruiker gedefinieerde type PhoneNumber aan gebruiker KhalidR. PhoneNumber bevindt zich in het schema Telemarketing.

GRANT VIEW DEFINITION ON TYPE::Telemarketing.PhoneNumber   
    TO KhalidR WITH GRANT OPTION;  
GO  

Zie ook

WEIGER Type Rechten (Transact-SQL)
TYPERECHTEN INTREKKEN (Transact-SQL)
CREATE TYPE (Transact-SQL)
Machtigingen (Database Engine)
Securables
Principals (Databasemotor)