Kommentar
Å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
Azure Synapse Analytics
Analysplattformssystem (PDW)
SQL-analysslutpunkt i Microsoft Fabric
Lager i Microsoft Fabric
SQL-databas i Microsoft Fabric
Beviljar behörigheter för en databas i SQL Server.
Transact-SQL syntaxkonventioner
Syntax
GRANT <permission> [ ,...n ]
TO <database_principal> [ ,...n ] [ WITH GRANT OPTION ]
[ AS <database_principal> ]
<permission>::=
permission | ALL [ PRIVILEGES ]
<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
tillåtelse Anger en behörighet som kan beviljas för en databas. En lista över behörigheterna finns i avsnittet Kommentarer senare i det här avsnittet.
ALLA Det här alternativet beviljar inte alla möjliga behörigheter. Att ge ALLA är likvärdigt med att ge följande behörigheter: BACKUPDATABASE, BACKUP LOG, CREATE DEFAULT, , CREATE FUNCTIONCREATE PROCEDURE, , CREATE RULE, , CREATE TABLEoch CREATE VIEW.
PRIVILEGIER som ingår för ANSI-92-efterlevnad. Ändrar inte beteendet för ALLA.
MED GRANT OPTION Indikerar att huvudmannen också kommer att ges möjlighet att ge det angivna tillståndet till andra huvudmän.
AS-database_principal <> Anger ett huvudnamn från vilket huvudnamnet som kör frågan härleder sin rätt att bevilja behörigheten.
Database_user Anger en databasanvändare.
Database_role Anger en databasroll.
Application_rolegäller för: SQL Server 2008 (10.0.x) och senare SQL Database
Anger en programroll.
Database_user_mapped_to_Windows_Usergäller för: SQL Server 2008 (10.0.x) och senare
Anger en databasanvändare som mappats till en Windows-användare.
Database_user_mapped_to_Windows_Groupgäller för: SQL Server 2008 (10.0.x) och senare
Anger en databasanvändare som mappats till en Windows-grupp.
Database_user_mapped_to_certificategäller för: SQL Server 2008 (10.0.x) och senare
Anger en databasanvändare som mappats till ett certifikat.
Database_user_mapped_to_asymmetric_keygäller för: SQL Server 2008 (10.0.x) och senare
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
Important
En kombination av ALTER- och REFERENCE-behörigheter kan i vissa fall göra det möjligt för den som beviljar att visa data eller köra obehöriga funktioner. Till exempel: En användare med ALTER-behörighet i en tabell och REFERENS-behörighet för en funktion kan skapa en beräknad kolumn över en funktion och låta den köras. I det här fallet måste användaren också ha SELECT-behörighet för den beräknade kolumnen.
En databas är en skyddsbar som finns på den server som är dess överordnade i behörighetshierarkin. De mest specifika och begränsade behörigheter som kan beviljas för en databas visas i följande tabell, tillsammans med de mer allmänna behörigheter som omfattar dem under implikation.
| Databasbehörighet | Underförstådd av databasbehörighet | Underförstått av serverbehörighet |
|---|---|---|
| ADMINISTRERA DATABASE MASSÅTGÄRDER Gäller för: SQL Database. |
CONTROL | KONTROLLSERVER |
| ALTER | CONTROL | ÄNDRA NÅGON DATABASE |
| ÄNDRA NÅGON APPLICATION ROLE | ALTER | KONTROLLSERVER |
| ÄNDRA NÅGON ASSEMBLY | ALTER | KONTROLLSERVER |
| ÄNDRA NÅGON ASYMMETRIC KEY | ALTER | KONTROLLSERVER |
| ÄNDRA NÅGON CERTIFICATE | ALTER | KONTROLLSERVER |
| ÄNDRA NÅGON COLUMN ENCRYPTION KEY | ALTER | KONTROLLSERVER |
| ÄNDRA VILKEN DEFINITION SOM HELST COLUMN MASTER KEY | ALTER | KONTROLLSERVER |
| ÄNDRA NÅGON CONTRACT | ALTER | KONTROLLSERVER |
| ÄNDRA ALLA DATABASE GRANSKNINGAR | ALTER | ÄNDRA NÅGON SERVER AUDIT |
| ÄNDRA DDL DATABASETRIGGER | ALTER | KONTROLLSERVER |
| ÄNDRA EVENTUELLA DATABASEEVENT NOTIFICATION | ALTER | ÄNDRA NÅGON EVENT NOTIFICATION |
| ÄNDRA EVENTUELLA DATABASEEVENT SESSION Gäller för: SQL Database. |
ALTER | ÄNDRA NÅGON EVENT SESSION |
| ÄNDRA NÅGON DATABASE SCOPED CONFIGURATION gäller för: SQL Server 2016 (13.x) och senare SQL Database. |
CONTROL | KONTROLLSERVER |
| ÄNDRA ALLA DATARYMDER | ALTER | KONTROLLSERVER |
| ÄNDRA NÅGON EXTERNAL DATA SOURCE | ALTER | KONTROLLSERVER |
| ÄNDRA NÅGON EXTERNAL FILE FORMAT | ALTER | KONTROLLSERVER |
| ÄNDRA NÅGON EXTERNAL LIBRARY Gäller för: SQL Server 2017 (14.x). |
CONTROL | KONTROLLSERVER |
| ÄNDRA NÅGON FULLTEXT CATALOG | ALTER | KONTROLLSERVER |
| ÄNDRA VALFRI MASK | CONTROL | KONTROLLSERVER |
| ÄNDRA NÅGON MESSAGE TYPE | ALTER | KONTROLLSERVER |
| ÄNDRA NÅGON REMOTE SERVICE BINDING | ALTER | KONTROLLSERVER |
| ÄNDRA NÅGON ROLE | ALTER | KONTROLLSERVER |
| ÄNDRA NÅGON ROUTE | ALTER | KONTROLLSERVER |
| ÄNDRA NÅGON SCHEMA | ALTER | KONTROLLSERVER |
| ÄNDRA NÅGON SECURITY POLICY Gäller för: Azure SQL Database. |
CONTROL | KONTROLLSERVER |
| ÄNDRA NÅGON SENSITIVITY CLASSIFICATION Gäller för: SQL Server (SQL Server 2019 och senare), Azure SQL Database. |
CONTROL | KONTROLLSERVER |
| ÄNDRA NÅGON SERVICE | ALTER | KONTROLLSERVER |
| ÄNDRA NÅGON SYMMETRIC KEY | ALTER | KONTROLLSERVER |
| ÄNDRA NÅGON USER | ALTER | KONTROLLSERVER |
| AUTHENTICATE | CONTROL | AUTENTISERA SERVER |
| BACKUP DATABASE | CONTROL | KONTROLLSERVER |
| BACKUP Logga in | CONTROL | KONTROLLSERVER |
| CHECKPOINT | CONTROL | KONTROLLSERVER |
| CONNECT | ANSLUTNINGSREPLIKATION | KONTROLLSERVER |
| ANSLUTNINGSREPLIKATION | CONTROL | KONTROLLSERVER |
| CONTROL | CONTROL | KONTROLLSERVER |
| CREATE AGGREGATE | ALTER | KONTROLLSERVER |
| SKAPA VALFRITT EXTERNAL LIBRARY Gäller för: SQL Server 2017 (14.x). |
CONTROL | KONTROLLSERVER |
| CREATE ASSEMBLY | ÄNDRA NÅGON ASSEMBLY | KONTROLLSERVER |
| CREATE ASYMMETRIC KEY | ÄNDRA NÅGON ASYMMETRIC KEY | KONTROLLSERVER |
| CREATE CERTIFICATE | ÄNDRA NÅGON CERTIFICATE | KONTROLLSERVER |
| CREATE CONTRACT | ÄNDRA NÅGON CONTRACT | KONTROLLSERVER |
| CREATE DATABASE | CONTROL | SKAPA VALFRITT DATABASE |
| CREATE DATABASE DDL EVENT NOTIFICATION | ÄNDRA EVENTUELLA DATABASEEVENT NOTIFICATION | SKAPA DDL EVENT NOTIFICATION |
| CREATE DEFAULT | ALTER | KONTROLLSERVER |
| CREATE FULLTEXT CATALOG | ÄNDRA NÅGON FULLTEXT CATALOG | KONTROLLSERVER |
| CREATE FUNCTION | ALTER | KONTROLLSERVER |
| CREATE MESSAGE TYPE | ÄNDRA NÅGON MESSAGE TYPE | KONTROLLSERVER |
| CREATE PROCEDURE | ALTER | KONTROLLSERVER |
| CREATE QUEUE | ALTER | KONTROLLSERVER |
| CREATE REMOTE SERVICE BINDING | ÄNDRA NÅGON REMOTE SERVICE BINDING | KONTROLLSERVER |
| CREATE ROLE | ÄNDRA NÅGON ROLE | KONTROLLSERVER |
| CREATE ROUTE | ÄNDRA NÅGON ROUTE | KONTROLLSERVER |
| CREATE RULE | ALTER | KONTROLLSERVER |
| CREATE SCHEMA | ÄNDRA NÅGON SCHEMA | KONTROLLSERVER |
| CREATE SERVICE | ÄNDRA NÅGON SERVICE | KONTROLLSERVER |
| CREATE SYMMETRIC KEY | ÄNDRA NÅGON SYMMETRIC KEY | KONTROLLSERVER |
| CREATE SYNONYM | ALTER | KONTROLLSERVER |
| CREATE TABLE | ALTER | KONTROLLSERVER |
| CREATE TYPE | ALTER | KONTROLLSERVER |
| CREATE VIEW | ALTER | KONTROLLSERVER |
| CREATE XML SCHEMA COLLECTION | ALTER | KONTROLLSERVER |
| DELETE | CONTROL | KONTROLLSERVER |
| EXECUTE | CONTROL | KONTROLLSERVER |
| KÖR ALLA EXTERNA ENDPOINT Gäller för: Azure SQL Database. |
CONTROL | KONTROLLSERVER |
| KÖRA ETT EXTERNT SKRIPT Gäller för: SQL Server 2016 (13.x). |
CONTROL | KONTROLLSERVER |
| KÖRA EXTERNT SKRIPT gäller för: SQL Server 2019 (15.x). |
KÖRA ETT EXTERNT SKRIPT | KONTROLLSERVER |
| INSERT | CONTROL | KONTROLLSERVER |
| AVSLUTA DATABASE ANSLUTNING Gäller för: Azure SQL Database. |
CONTROL | ÄNDRA ALLA ANSLUTNINGAR |
| REFERENCES | CONTROL | KONTROLLSERVER |
| SELECT | CONTROL | KONTROLLSERVER |
| SHOWPLAN | CONTROL | ALTER TRACE |
| PRENUMERERA PÅ FRÅGEMEDDELANDEN | CONTROL | KONTROLLSERVER |
| TA ÄGARSKAP | CONTROL | KONTROLLSERVER |
| UNMASK | CONTROL | KONTROLLSERVER |
| UPDATE | CONTROL | KONTROLLSERVER |
| VIEW VALFRI COLUMN ENCRYPTION KEY DEFINITION | CONTROL | VIEW VALFRI DEFINITION |
| VIEW VALFRI COLUMN MASTER KEY DEFINITION | CONTROL | VIEW VALFRI DEFINITION |
| VIEW DATABASE STATLIGT | CONTROL | VIEW SERVERTILLSTÅND |
| VIEW DEFINITION | CONTROL | VIEW VALFRI DEFINITION |
Permissions
Givaren (eller huvudpersonen som anges med AS-optionen) måste antingen ha själva tillståndet med GRANT OPTION, eller ett högre tillstånd som innebär att tillståndet beviljas.
Om du använder AS-alternativet gäller följande ytterligare krav.
| SOM granting_principal | Ytterligare behörighet krävs |
|---|---|
| Databasanvändare | PERSONIFIERA behörighet för användaren, medlemskap i db_securityadmin fast databasroll, medlemskap i db_owner fast databasroll eller medlemskap i den fasta serverrollen sysadmin. |
| Databasanvändare mappad till en Windows-inloggning | PERSONIFIERA behörighet för användaren, medlemskap i db_securityadmin fast databasroll, medlemskap i db_owner fast databasroll eller medlemskap i den fasta serverrollen sysadmin. |
| Databasanvändare mappad till en Windows-grupp | Medlemskap i Windows-gruppen, medlemskap i db_securityadmin fast databasroll, medlemskap i db_owner fast databasroll eller medlemskap i den fasta serverrollen sysadmin. |
| Databasanvändare mappad till ett certifikat | Medlemskap i db_securityadmin fast databasroll, medlemskap i db_owner fast databasroll eller medlemskap i den fasta serverrollen sysadmin. |
| Databasanvändare mappad till en asymmetrisk nyckel | Medlemskap i db_securityadmin fast databasroll, medlemskap i db_owner fast databasroll eller medlemskap i den fasta serverrollen sysadmin. |
| Databasanvändaren har inte mappats till något serverhuvudnamn | PERSONIFIERA behörighet för användaren, medlemskap i db_securityadmin fast databasroll, medlemskap i db_owner fast databasroll eller medlemskap i den fasta serverrollen sysadmin. |
| Databasroll | ALTER-behörighet för rollen, medlemskap i db_securityadmin fast databasroll, medlemskap i db_owner fast databasroll eller medlemskap i den fasta serverrollen sysadmin. |
| Applikationsroll | ALTER-behörighet för rollen, medlemskap i db_securityadmin fast databasroll, medlemskap i db_owner fast databasroll eller medlemskap i den fasta serverrollen sysadmin. |
Objektägare kan bevilja behörigheter för de objekt de äger. Huvudnamn som har KONTROLL-behörighet för en skyddsbar kan bevilja behörighet för den skyddsbara filen.
Beviljare av CONTROL SERVER-behörighet, till exempel medlemmar i den fasta sysadmin-serverrollen, kan bevilja alla behörigheter för alla som kan skyddas på servern.
Examples
A. Bevilja behörighet att skapa tabeller
I följande exempel ges CREATE TABLE behörighet för AdventureWorks databasen till användaren MelanieK.
USE AdventureWorks;
GRANT CREATE TABLE TO MelanieK;
GO
B. Bevilja SHOWPLAN-behörighet till en programroll
I följande exempel ges SHOWPLAN behörighet för databasen till programrollen AdventureWorks2025AuditMonitor .
Gäller för: SQL Server 2008 (10.0.x) och senare SQL Database
USE AdventureWorks2022;
GRANT SHOWPLAN TO AuditMonitor;
GO
C. Beviljande CREATE VIEW med GRANT OPTION
I följande exempel ges CREATE VIEW behörighet för AdventureWorks2025 databasen till användare CarmineEs med behörighet att bevilja CREATE VIEW andra huvudkonton.
USE AdventureWorks2022;
GRANT CREATE VIEW TO CarmineEs WITH GRANT OPTION;
GO
D. Bevilja KONTROLL-behörighet till en databasanvändare
I följande exempel ges CONTROL behörighet för AdventureWorks2025 databasen till databasanvändaren Sarah. Användaren måste finnas i databasen och kontexten måste vara inställd på databasen.
USE AdventureWorks2022;
GRANT CONTROL ON DATABASE::AdventureWorks2022 TO Sarah;
GO