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 Managed Instance
Ger behörigheter på en server.
Transact-SQL syntaxkonventioner
Syntax
GRANT permission [ ,...n ]
TO <grantee_principal> [ ,...n ] [ WITH GRANT OPTION ]
[ AS <grantor_principal> ]
<grantee_principal> ::= SQL_Server_login
| SQL_Server_login_mapped_to_Windows_login
| SQL_Server_login_mapped_to_Windows_group
| SQL_Server_login_mapped_to_certificate
| SQL_Server_login_mapped_to_asymmetric_key
| server_role
<grantor_principal> ::= SQL_Server_login
| SQL_Server_login_mapped_to_Windows_login
| SQL_Server_login_mapped_to_Windows_group
| SQL_Server_login_mapped_to_certificate
| SQL_Server_login_mapped_to_asymmetric_key
| server_role
Arguments
permission
Specificerar en behörighet som kan ges på en server. För en lista över behörigheterna, se avsnittet Anmärkningar senare i detta ämne.
TO <grantee_principal> Specificerar den princip som tillståndet ges till.
AS <grantor_principal> Specificerar den princip från vilken huvudpersonen som utför denna fråga härleder sin rätt att bevilja tillståndet.
MED GRANT OPTION
Anger att huvudkontot också kommer att ges möjlighet att bevilja den angivna behörigheten till andra huvudnamn.
SQL_Server_login
Anger en SQL Server-inloggning.
SQL_Server_login_mapped_to_Windows_login
Anger en SQL Server-inloggning som mappats till en Windows-inloggning.
SQL_Server_login_mapped_to_Windows_group
Anger en SQL Server-inloggning mappad till en Windows-grupp.
SQL_Server_login_mapped_to_certificate
Anger en SQL Server-inloggning mappad till ett certifikat.
SQL_Server_login_mapped_to_asymmetric_key
Anger en SQL Server-inloggning mappad till en asymmetrisk nyckel.
server_role
Specificerar en användardefinierad serverroll.
Remarks
Behörigheter på serverns område kan endast beviljas när den aktuella databasen är master.
Information om serverbehörigheter kan visas i sys.server_permissions katalogvy och information om serverhuvudnamn kan visas i sys.server_principals katalogvy. Information om medlemskap i serverroller kan visas i sys.server_role_members katalogvyn.
En server är den högsta nivån i behörighetshierarkin. De mest specifika och begränsade behörigheterna som kan ges på en server listas i följande tabell.
| Serverbehörighet | Underförstått av serverbehörighet |
|---|---|
| ADMINISTRERA MASSÅTGÄRDER | KONTROLLSERVER |
| ÄNDRA NÅGON AVAILABILITY GROUP gäller för: SQL Server (SQL Server 2012 (11.x) via aktuella versionen). |
KONTROLLSERVER |
| ÄNDRA ALLA ANSLUTNINGAR | KONTROLLSERVER |
| ÄNDRA NÅGON CREDENTIAL | KONTROLLSERVER |
| ÄNDRA NÅGON DATABASE | KONTROLLSERVER |
| ÄNDRA NÅGON ENDPOINT | KONTROLLSERVER |
| ÄNDRA NÅGON EVENT NOTIFICATION | KONTROLLSERVER |
| ÄNDRA NÅGON EVENT SESSION | KONTROLLSERVER |
| ÄNDRA EN LÄNKAD SERVER | KONTROLLSERVER |
| ÄNDRA NÅGON LOGIN | KONTROLLSERVER |
| ÄNDRA NÅGON SERVER AUDIT | KONTROLLSERVER |
| ÄNDRA NÅGON SERVER ROLE gäller för: SQL Server (SQL Server 2012 (11.x) via aktuella versionen). |
KONTROLLSERVER |
| ÄNDRA RESURSER | KONTROLLSERVER |
| ÄNDRA SERVERTILLSTÅND | KONTROLLSERVER |
| ÄNDRA INSTÄLLNINGAR | KONTROLLSERVER |
| ALTER TRACE | KONTROLLSERVER |
| AUTENTISERA SERVER | KONTROLLSERVER |
| ANSLUT ALLA DATABASE gäller för: SQL Server (SQL Server 2014 (12.x) via aktuella versionen). |
KONTROLLSERVER |
| ANSLUTA SQL-DATABAS | KONTROLLSERVER |
| KONTROLLSERVER | KONTROLLSERVER |
| SKAPA VALFRITT DATABASE | ÄNDRA NÅGON DATABASE |
| CREATE AVAILABILITY GROUP gäller för: SQL Server (SQL Server 2012 (11.x) via aktuella versionen). |
ÄNDRA NÅGON AVAILABILITY GROUP |
| SKAPA DDL EVENT NOTIFICATION | ÄNDRA NÅGON EVENT NOTIFICATION |
| CREATE ENDPOINT | ÄNDRA NÅGON ENDPOINT |
| CREATE LOGIN Gäller för: SQL Server 2022 (16.x) och senare versioner. |
ÄNDRA NÅGON LOGIN |
| CREATE SERVER ROLE gäller för: SQL Server (SQL Server 2012 (11.x) via aktuella versionen). |
ÄNDRA NÅGON SERVER ROLE |
| SKAPA SPÅRNING EVENT NOTIFICATION | ÄNDRA NÅGON EVENT NOTIFICATION |
| EXTERN ÅTKOMST ASSEMBLY | KONTROLLSERVER |
| PERSONIFIERA ALLA LOGIN gäller för: SQL Server (SQL Server 2014 (12.x) via aktuella versionen). |
KONTROLLSERVER |
| VÄLJ ALLA USER SKYDDSBARA gäller för: SQL Server (SQL Server 2014 (12.x) via aktuella versionen). |
KONTROLLSERVER |
| SHUTDOWN | KONTROLLSERVER |
| OSÄKRA ASSEMBLY | KONTROLLSERVER |
| VIEW NÅGON DATABASE | VIEW VALFRI DEFINITION |
| VIEW VALFRI DEFINITION | KONTROLLSERVER |
| VIEW SERVERTILLSTÅND | ÄNDRA SERVERTILLSTÅND |
Följande tre serverbehörigheter lades till i SQL Server 2014 (12.x).
KOPPLA IN VILKEN SOM HELST DATABASE Tillstånd
Giv CONNECT ANY DATABASE till en inloggning som måste ansluta till alla databaser som för närvarande finns och till eventuella nya databaser som kan skapas i framtiden. Beviljar inte någon behörighet i någon databas utöver anslutning. Kombinera med SELECT ALL USER SECURABLES eller VIEW SERVER STATE för att låta en granskningsprocess visa all data eller alla databasstatus på instansen av SQL Server.
UTGER SIG FÖR ATT VARA NÅGON LOGIN Tillstånd
När den beviljas kan en mellannivåprocess personifiera kontot för klienter som ansluter till den, eftersom den ansluter till databaser. När du nekas kan en högprivilegierad inloggning blockeras från att personifiera andra inloggningar. En inloggning med KONTROLLSERVER behörighet kan till exempel blockeras från att personifiera andra inloggningar.
VÄLJ ALLA USER Tillstånd för VÄRDEPAPPER
När inloggning beviljas kan den se data från alla schema-nivåobjekt, såsom tabeller, vyer och tabellvärda funktioner som finns där användarskrivbara scheman (vilket schema som helst utom sys och INFORMATION_SCHEMA) kan användas för att skapa användarobjekt. Denna behörighet gäller i alla databaser som användaren kan ansluta till. När den nekas förhindrar den åtkomst till alla objekt om de inte ingår i sys- eller INFORMATION_SCHEMA-schemat. Detta påverkar också metadata-synligheten för de täckta objekten, se även: Metadata Visibility Configuration.
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. Medlemmar i sysadmin-funktionen med fast server kan ge vilken behörighet som helst.
Examples
A. Att ge behörighet till en inloggning
Följande exempel ger CONTROL SERVER behörighet till SQL Server-inloggningenTerryEminhizer.
USE master;
GRANT CONTROL SERVER TO TerryEminhizer;
GO
B. Att ge ett tillstånd som har GRANT tillstånd
Följande exempel ger ALTER ANY EVENT NOTIFICATION SQL Server-inloggning JanethEsteves rätt att ge den behörigheten till en annan inloggning.
USE master;
GRANT ALTER ANY EVENT NOTIFICATION TO JanethEsteves WITH GRANT OPTION;
GO
C. Att ge behörighet till en serverroll
Följande exempel skapar en serverroll med namnet ITDevelopers. Den ger ALTER ANY DATABASE behörighet till ITDevelopers serverrollen..
USE master;
CREATE SERVER ROLE ITDevelopers ;
GRANT ALTER ANY DATABASE TO ITDevelopers ;
GO
Se även
GRANT (Transact-SQL)
DENY (Transact-SQL)
DENY Serverbehörigheter (Transact-SQL)
REVOKE Serverbehörigheter (Transact-SQL)
Behörighetshierarki (databasmotor)
Principals (Database Engine)
Behörigheter (Database Engine)
sys.fn_builtin_permissions (Transact-SQL)
sys.fn_my_permissions (Transact-SQL)
HAS_PERMS_BY_NAME (Transact-SQL)