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
Azure Synapse Analytics
Analysplattformssystem (PDW)
SQL-analysslutpunkt i Microsoft Fabric
Lager i Microsoft Fabric
SQL-databas i Förhandsversion av 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 bevilja ALLA motsvarar att bevilja följande behörigheter: SÄKERHETSKOPIERINGSDATABAS, SÄKERHETSKOPIERINGSLOGG, SKAPA STANDARD, SKAPA FUNKTION, SKAPA PROCEDUR, SKAPA REGEL, SKAPA TABELL OCH SKAPA VY.
PRIVILEGIER som ingår för ANSI-92-efterlevnad. Ändrar inte beteendet för ALLA.
MED ALTERNATIVET BEVILJA Anger att huvudkontot också kommer att ges möjlighet att bevilja den angivna behörigheten till andra huvudkonton.
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.
| Database permission | Underförstådd av databasbehörighet | Underförstått av serverbehörighet | 
|---|---|---|
| ADMINISTRERA MASSOPERATIONER FÖR DATABAS Gäller för: SQL Database. | CONTROL | CONTROL SERVER | 
| ALTER | CONTROL | ÄNDRA EN DATABAS | 
| ÄNDRA VILKEN PROGRAMROLL SOM HELST | ALTER | CONTROL SERVER | 
| ÄNDRA ALLA SAMMANSÄTTNINGAR | ALTER | CONTROL SERVER | 
| ÄNDRA ASYMMETRISK NYCKEL | ALTER | CONTROL SERVER | 
| ÄNDRA ALLA CERTIFIKAT | ALTER | CONTROL SERVER | 
| ÄNDRA NÅGON KOLUMNKRYPTERINGSNYCKEL | ALTER | CONTROL SERVER | 
| ÄNDRA VALFRI KOLUMNHUVUDNYCKELDEFINITION | ALTER | CONTROL SERVER | 
| ÄNDRA ALLA KONTRAKT | ALTER | CONTROL SERVER | 
| ÄNDRA VILKEN DATABASGRANSKNING SOM HELST | ALTER | ÄNDRA SERVERGRANSKNING | 
| ÄNDRA VALFRI DATABAS-DDL-UTLÖSARE | ALTER | CONTROL SERVER | 
| ÄNDRA EVENTUELLA DATABASHÄNDELSEMEDDELANDEN | ALTER | ÄNDRA HÄNDELSEMEDDELANDEN | 
| ÄNDRA EN DATABASHÄNDELSESESSION Gäller för: SQL Database. | ALTER | ÄNDRA HÄNDELSESESSIONER | 
| ÄNDRA VARJE DATABAS-SPECIFIK KONFIGURATION gäller för: SQL Server 2016 (13.x) och senare SQL Database. | CONTROL | CONTROL SERVER | 
| ÄNDRA ALLA DATARYMDER | ALTER | CONTROL SERVER | 
| ÄNDRA ALLA EXTERNA DATAKÄLLOR | ALTER | CONTROL SERVER | 
| ÄNDRA VILKET SOM HELST EXTERNT FILFORMAT | ALTER | CONTROL SERVER | 
| ÄNDRA ALLA EXTERNA BIBLIOTEK Gäller för: SQL Server 2017 (14.x). | CONTROL | CONTROL SERVER | 
| ÄNDRA ALLA FULLTEXTKATALOGER | ALTER | CONTROL SERVER | 
| ÄNDRA VALFRI MASK | CONTROL | CONTROL SERVER | 
| ÄNDRA VALFRI MEDDELANDETYP | ALTER | CONTROL SERVER | 
| ÄNDRA ALLA FJÄRRTJÄNSTBINDNINGAR | ALTER | CONTROL SERVER | 
| ÄNDRA VILKEN ROLL SOM HELST | ALTER | CONTROL SERVER | 
| ÄNDRA VALFRI VÄG | ALTER | CONTROL SERVER | 
| ÄNDRA VALFRITT SCHEMA | ALTER | CONTROL SERVER | 
| ÄNDRA ALLA SÄKERHETSPRINCIPER Gäller för: Azure SQL Database. | CONTROL | CONTROL SERVER | 
| ÄNDRA EVENTUELL KÄNSLIGHETSKLASSIFICERING Gäller för: SQL Server (SQL Server 2019 och senare), Azure SQL Database. | CONTROL | CONTROL SERVER | 
| ÄNDRA ALLA TJÄNSTER | ALTER | CONTROL SERVER | 
| ÄNDRA EN SYMMETRISK NYCKEL | ALTER | CONTROL SERVER | 
| ÄNDRA ALLA ANVÄNDARE | ALTER | CONTROL SERVER | 
| AUTHENTICATE | CONTROL | AUTHENTICATE SERVER | 
| BACKUP DATABASE | CONTROL | CONTROL SERVER | 
| BACKUP LOG | CONTROL | CONTROL SERVER | 
| CHECKPOINT | CONTROL | CONTROL SERVER | 
| CONNECT | CONNECT REPLICATION | CONTROL SERVER | 
| CONNECT REPLICATION | CONTROL | CONTROL SERVER | 
| CONTROL | CONTROL | CONTROL SERVER | 
| CREATE AGGREGATE | ALTER | CONTROL SERVER | 
| SKAPA ETT EXTERNT BIBLIOTEK Gäller för: SQL Server 2017 (14.x). | CONTROL | CONTROL SERVER | 
| CREATE ASSEMBLY | ÄNDRA ALLA SAMMANSÄTTNINGAR | CONTROL SERVER | 
| SKAPA ASYMMETRISK NYCKEL | ÄNDRA ASYMMETRISK NYCKEL | CONTROL SERVER | 
| CREATE CERTIFICATE | ÄNDRA ALLA CERTIFIKAT | CONTROL SERVER | 
| CREATE CONTRACT | ÄNDRA ALLA KONTRAKT | CONTROL SERVER | 
| CREATE DATABASE | CONTROL | SKAPA VALFRI DATABAS | 
| SKAPA HÄNDELSEMEDDELANDE FÖR DATABAS-DDL | ÄNDRA EVENTUELLA DATABASHÄNDELSEMEDDELANDEN | SKAPA DDL-HÄNDELSEMEDDELANDE | 
| CREATE DEFAULT | ALTER | CONTROL SERVER | 
| SKAPA FULLTEXTKATALOG | ÄNDRA ALLA FULLTEXTKATALOGER | CONTROL SERVER | 
| CREATE FUNCTION | ALTER | CONTROL SERVER | 
| SKAPA MEDDELANDETYP | ÄNDRA VALFRI MEDDELANDETYP | CONTROL SERVER | 
| CREATE PROCEDURE | ALTER | CONTROL SERVER | 
| CREATE QUEUE | ALTER | CONTROL SERVER | 
| SKAPA FJÄRRTJÄNSTBINDNING | ÄNDRA ALLA FJÄRRTJÄNSTBINDNINGAR | CONTROL SERVER | 
| CREATE ROLE | ÄNDRA VILKEN ROLL SOM HELST | CONTROL SERVER | 
| CREATE ROUTE | ÄNDRA VALFRI VÄG | CONTROL SERVER | 
| CREATE RULE | ALTER | CONTROL SERVER | 
| CREATE SCHEMA | ÄNDRA VALFRITT SCHEMA | CONTROL SERVER | 
| CREATE SERVICE | ÄNDRA ALLA TJÄNSTER | CONTROL SERVER | 
| SKAPA SYMMETRISK NYCKEL | ÄNDRA EN SYMMETRISK NYCKEL | CONTROL SERVER | 
| CREATE SYNONYM | ALTER | CONTROL SERVER | 
| CREATE TABLE | ALTER | CONTROL SERVER | 
| CREATE TYPE | ALTER | CONTROL SERVER | 
| CREATE VIEW | ALTER | CONTROL SERVER | 
| SKAPA XML-SCHEMASAMLING | ALTER | CONTROL SERVER | 
| DELETE | CONTROL | CONTROL SERVER | 
| EXECUTE | CONTROL | CONTROL SERVER | 
| KÖRA VALFRI EXTERN SLUTPUNKT Gäller för: Azure SQL Database. | CONTROL | CONTROL SERVER | 
| KÖRA ETT EXTERNT SKRIPT Gäller för: SQL Server 2016 (13.x). | CONTROL | CONTROL SERVER | 
| KÖRA EXTERNT SKRIPT gäller för: SQL Server 2019 (15.x). | KÖRA ETT EXTERNT SKRIPT | CONTROL SERVER | 
| INSERT | CONTROL | CONTROL SERVER | 
| AVBRYT DATABASANSLUTNING Gäller för: Azure SQL Database. | CONTROL | ÄNDRA ALLA ANSLUTNINGAR | 
| REFERENCES | CONTROL | CONTROL SERVER | 
| SELECT | CONTROL | CONTROL SERVER | 
| SHOWPLAN | CONTROL | ALTER TRACE | 
| PRENUMERERA PÅ FRÅGEMEDDELANDEN | CONTROL | CONTROL SERVER | 
| TAKE OWNERSHIP | CONTROL | CONTROL SERVER | 
| UNMASK | CONTROL | CONTROL SERVER | 
| UPDATE | CONTROL | CONTROL SERVER | 
| VISA VILKEN SOM HELST AV KOLUMNKRYPTERINGSNYCKELDEFINITION | CONTROL | SE NÅGON DEFINITION | 
| VISA VILKEN SOM HELST HUVUDNYCKEL FÖR KOLUMN DEFINITION | CONTROL | SE NÅGON DEFINITION | 
| VISA DATABASENS TILLSTÅND | CONTROL | SE SERVERTILLSTÅND | 
| VIEW DEFINITION | CONTROL | SE NÅGON DEFINITION | 
Permissions
Beviljaren (eller det huvudnamn som anges med ALTERNATIVET AS) måste ha antingen behörigheten själv med GRANT OPTION eller en högre behörighet som innebär att behörigheten beviljas.
Om du använder AS-alternativet gäller följande ytterligare krav.
| AS granting_principal | Ytterligare behörighet krävs | 
|---|---|
| Database user | 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. | 
| Database role | 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. | 
| Application role | 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 AuditMonitorAdventureWorks2022 .
Gäller för: SQL Server 2008 (10.0.x) och senare SQL Database
USE AdventureWorks2022;
GRANT SHOWPLAN TO AuditMonitor;
GO
C. Bevilja SKAPA VY med ALTERNATIVET BEVILJA
I följande exempel ges CREATE VIEW behörighet för AdventureWorks2022 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 AdventureWorks2022 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