GRANT Oprávnění serveru (Transact-SQL)

Platí na:SQL ServerAzureSQL Managed Instance

Uděluje oprávnění na serveru.

Transact-SQL konvence syntaxe

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
Specifikuje oprávnění, které lze udělit na serveru. Seznam oprávnění najdete v části Poznámky dále v tomto tématu.

TO <grantee_principal> Specifikuje principa, kterému je povolení uděleno.

AS <grantor_principal> Specifikuje princip, ze kterého hlavní subjekt provádějící tento dotaz získává právo udělit oprávnění.

S GRANT MOŽNOSTÍ
Označuje, že objekt zabezpečení bude mít také možnost udělit zadané oprávnění jiným objektům zabezpečení.

SQL_Server_login
Určuje přihlášení k SQL Serveru.

SQL_Server_login_mapped_to_Windows_login
Určuje přihlášení SQL Serveru namapované na přihlášení systému Windows.

SQL_Server_login_mapped_to_Windows_group
Určuje přihlášení SQL Serveru namapované na skupinu Windows.

SQL_Server_login_mapped_to_certificate
Určuje přihlášení SQL Serveru namapované na certifikát.

SQL_Server_login_mapped_to_asymmetric_key
Určuje přihlášení SQL Serveru namapované na asymetrický klíč.

server_role
Specifikuje uživatelsky definovanou serverovou roli.

Remarks

Oprávnění v rozsahu serveru lze udělit pouze tehdy, když je aktuální databáze správná.

Informace o oprávněních serveru lze zobrazit v zobrazení katalogu sys.server_permissions a informace o objektech zabezpečení serveru lze zobrazit v zobrazení katalogu sys.server_principals. Informace o členství rolí serveru lze zobrazit v zobrazení katalogu sys.server_role_members.

Server je nejvyšší úroveň hierarchie oprávnění. Nejspecifičtější a nejomezenější oprávnění, která lze na serveru udělit, jsou uvedena v následující tabulce.

Oprávnění serveru Implicitní oprávnění serveru
SPRÁVA HROMADNÝCH OPERACÍ řídicí server
Změnit libovolný AVAILABILITY GROUP

platí pro: SQL Server (SQL Server 2012 (11.x) až aktuální verze).
řídicí server
ZÁMĚNA JAKÉKOLIV PŘIPOJENÍ řídicí server
Změnit libovolný CREDENTIAL řídicí server
Změnit libovolný DATABASE řídicí server
Změnit libovolný ENDPOINT řídicí server
Změnit libovolný EVENT NOTIFICATION řídicí server
Změnit libovolný EVENT SESSION řídicí server
ZMĚNIT JAKÝKOLI PROPOJENÝ SERVER řídicí server
Změnit libovolný LOGIN řídicí server
Změnit libovolný SERVER AUDIT řídicí server
Změnit libovolný SERVER ROLE

platí pro: SQL Server (SQL Server 2012 (11.x) až aktuální verze).
řídicí server
Změnit zdroje řídicí server
Změnit stav serveru řídicí server
Změnit nastavení řídicí server
ALTEROVÁ STOPA řídicí server
OVĚŘENÍ SERVERU řídicí server
SPOJTE JAKÉKOLIV DATABASE

platí pro: SQL Server (SQL Server 2014 (12.x) až aktuální verze).
řídicí server
CONNECT SQL řídicí server
řídicí server řídicí server
VYTVOŘTE LIBOVOLNÉ DATABASE Změnit libovolný DATABASE
CREATE AVAILABILITY GROUP

platí pro: SQL Server (SQL Server 2012 (11.x) až aktuální verze).
Změnit libovolný AVAILABILITY GROUP
VYTVOŘIT DDL EVENT NOTIFICATION Změnit libovolný EVENT NOTIFICATION
CREATE ENDPOINT Změnit libovolný ENDPOINT
CREATE LOGIN

Platí pro: SQL Server 2022 (16.x) a novější verze.
Změnit libovolný LOGIN
CREATE SERVER ROLE

platí pro: SQL Server (SQL Server 2012 (11.x) až aktuální verze).
Změnit libovolný SERVER ROLE
VYTVOŘIT TRACE EVENT NOTIFICATION Změnit libovolný EVENT NOTIFICATION
EXTERNÍ PŘÍSTUP ASSEMBLY řídicí server
PŘEDSTÍREJTE SE ZA KOHOKOLI LOGIN

platí pro: SQL Server (SQL Server 2014 (12.x) až aktuální verze).
řídicí server
VYBRAT VŠECHNY USER SECURABLES

platí pro: SQL Server (SQL Server 2014 (12.x) až aktuální verze).
řídicí server
SHUTDOWN řídicí server
NEBEZPEČNÉ ASSEMBLY řídicí server
VIEW JAKÝKOLI DATABASE VIEW JAKÁKOLI DEFINICE
VIEW JAKÁKOLI DEFINICE řídicí server
VIEW JAKÁKOLI DEFINICE VÝKONU

Platí pro: SQL Server 2022 (16.x) a novější verze.
VIEW JAKÁKOLI DEFINICE
VIEW JAKÁKOLI DEFINICE ZABEZPEČENÍ

Platí pro: SQL Server 2022 (16.x) a novější verze.
VIEW JAKÁKOLI DEFINICE
VIEW STAV VÝKONU SERVERU

Platí pro: SQL Server 2022 (16.x) a novější verze.
VIEW STAV SERVERU
VIEW STAV ZABEZPEČENÍ SERVERU

Platí pro: SQL Server 2022 (16.x) a novější verze.
VIEW STAV SERVERU
VIEW STAV SERVERU Změnit stav serveru

V SQL Serveru 2014 (12.x) byly přidána následující tři oprávnění serveru.

SPOJTE JAKÉKOLIV DATABASE Povolení
Udělte CONNECT ANYTHING DATABASE k přihlašování, které musí být připojeno ke všem aktuálně existujícím databázím a k novým databázím, které mohou být v budoucnu vytvořeny. Neuděluje žádné oprávnění v žádné databázi nad rámec připojení. Kombinujte s SELECT ALL USER SECURABLES nebo VIEW SERVER STATE, aby auditní proces mohl zobrazit všechna data nebo všechny stavy databáze na instanci SQL Server.

PŘEDSTÍREJTE SE ZA KOHOKOLI LOGIN Povolení
Pokud je to uděleno, umožňuje proces střední vrstvy zosobnit účet klientů, kteří se k němu připojují, protože se připojuje k databázím. Pokud je odepřeno, může být zablokované zosobnění jiných přihlášení s vysokou úrovní oprávnění. Například přihlášení s oprávněním CONTROL SERVER může být zablokováno zosobnění jiných přihlášení.

VYBRAT VŠE USER SECURABLES Povolení
Pokud je povoleno, může přihlášení zobrazit data ze všech objektů na úrovni schématu, jako jsou tabulky, pohledy a tabulkové funkce, které obsahují uživatelsky zapisovatelná schémata (jakékoli schéma kromě sys a INFORMATION_SCHEMA), lze použít k vytváření uživatelských objektů. Toto oprávnění má účinek ve všech databázích, ke kterým se uživatel může připojit. Pokud je zamítnuto, znemožní přístup ke všem objektům, pokud nejsou v sys- nebo INFORMATION_SCHEMA-schématu. To má také vliv na viditelnost metadat pokrytých objektů, viz také Metadata Visibility Configuration.

Permissions

Grantor (nebo objekt zabezpečení zadaný pomocí možnosti AS) musí mít buď oprávnění samotná s GRANT option, nebo vyšší oprávnění, které znamená udělení oprávnění. Členové role pevného správce systému mohou udělit jakékoli oprávnění.

Examples

A. Udělení povolení k přihlášení

Následující příklad uděluje CONTROL SERVER oprávnění k přihlášení TerryEminhizerdo SQL Server.

USE master;  
GRANT CONTROL SERVER TO TerryEminhizer;  
GO  

B. Udělení povolení, které má GRANT povolení

Následující příklad uděluje ALTER ANY EVENT NOTIFICATION SQL Server přihlášení JanethEsteves s právem udělit toto oprávnění jinému přihlášení.

USE master;  
GRANT ALTER ANY EVENT NOTIFICATION TO JanethEsteves WITH GRANT OPTION;  
GO  

C. Udělení oprávnění serverové roli

Následující příklad vytváří serverovou roli s názvem ITDevelopers. Uděluje oprávnění ALTER ANY DATABASE serverové roli ITDevelopers ...

USE master;  
CREATE SERVER ROLE ITDevelopers ;  
GRANT ALTER ANY DATABASE TO ITDevelopers ;  
GO  

Viz také

GRANT (Transact-SQL)
DENY (Transact-SQL)
DENY Oprávnění serveru (Transact-SQL)
REVOKE Oprávnění serveru (Transact-SQL)
Hierarchie oprávnění (databázový stroj)
Principals (Database Engine)
Oprávnění (Databázový stroj)
sys.fn_vestavěná_oprávnění (Transact-SQL)
sys.fn_my_permissions (Transact-SQL)
HAS_PERMS_BY_NAME (Transact-SQL)