Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Platí pro:SQL Server
Azure SQL Database
Spravovaná instance Azure SQL
Azure Synapse Analytics
Analytics Platform System (PDW)
Koncový bod analýzy SQL v Microsoft Fabric
Sklad v Microsoft Fabric
Databáze SQL v Microsoft Fabric
Uděluje oprávnění k databázi na SQL Serveru.
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
povolení Určuje oprávnění, které lze udělit v databázi. Seznam oprávnění najdete v části Poznámky dále v tomto tématu.
Všechna tato možnost neuděluje všechna možná oprávnění. Udělení ALL je ekvivalentní udělení následujících oprávnění: BACKUP, LOG, DATABASE, BACKUP, , CREATE DEFAULT, CREATE FUNCTION, CREATE PROCEDURE, a CREATE RULE. CREATE TABLECREATE VIEW
OPRÁVNĚNÍ zahrnutá pro dodržování předpisů ANSI-92. Nemění chování funkce ALL.
S GRANT MOŽNOSTÍ Označuje, že zmocnitel bude mít také možnost udělit stanovené povolení ostatním zmocnitelům.
AS <database_principal> Určuje objekt zabezpečení, ze kterého objekt zabezpečení, který spouští tento dotaz, odvozuje své právo udělit oprávnění.
Database_user Určuje uživatele databáze.
Database_role Určuje roli databáze.
Application_roleplatí pro: SQL Server 2008 (10.0.x) a novější, SQL Database
Určuje roli aplikace.
Database_user_mapped_to_Windows_Userplatí pro: SQL Server 2008 (10.0.x) a novější
Určuje uživatele databáze mapované na uživatele systému Windows.
Database_user_mapped_to_Windows_Groupplatí pro: SQL Server 2008 (10.0.x) a novější
Určuje uživatele databáze mapované na skupinu Windows.
Database_user_mapped_to_certificateplatí pro: SQL Server 2008 (10.0.x) a novější
Určuje uživatele databáze mapované na certifikát.
Database_user_mapped_to_asymmetric_keyplatí pro: SQL Server 2008 (10.0.x) a novější
Určuje uživatele databáze namapovaný na asymetrický klíč.
Database_user_with_no_login Určuje uživatele databáze bez odpovídajícího objektu zabezpečení na úrovni serveru.
Remarks
Important
Kombinace oprávnění ALTER a REFERENCE v některých případech může uživateli umožnit zobrazit data nebo spustit neautorizované funkce. Příklad: Uživatel s oprávněním ALTER pro tabulku a ODKAZ na funkci může vytvořit počítaný sloupec nad funkcí a nechat ho spustit. V tomto případě musí mít uživatel také oprávnění SELECT pro počítaný sloupec.
Databáze je zabezpečitelná serverem, který je nadřazený v hierarchii oprávnění. Nejvýraznější a omezená oprávnění, která je možné udělit v databázi, jsou uvedená v následující tabulce společně s obecnějšími oprávněními, která je zahrnují implikací.
| Povolení k databázi | Implicitní oprávnění databáze | Implicitní oprávnění serveru |
|---|---|---|
| SPRAVOVAT DATABASE HROMADNÉ OPERACE Platí pro: SQL Database. |
CONTROL | řídicí server |
| ALTER | CONTROL | Změnit libovolný DATABASE |
| Změnit libovolný APPLICATION ROLE | ALTER | řídicí server |
| Změnit libovolný ASSEMBLY | ALTER | řídicí server |
| Změnit libovolný ASYMMETRIC KEY | ALTER | řídicí server |
| Změnit libovolný CERTIFICATE | ALTER | řídicí server |
| Změnit libovolný COLUMN ENCRYPTION KEY | ALTER | řídicí server |
| ZMĚNIT JAKOUKOLI COLUMN MASTER KEY DEFINICI | ALTER | řídicí server |
| Změnit libovolný CONTRACT | ALTER | řídicí server |
| UPRAVTE JAKÝKOLI DATABASE AUDIT | ALTER | Změnit libovolný SERVER AUDIT |
| UPRAVTE LIBOVOLNÉ DATABASE DDL TRIGGER | ALTER | řídicí server |
| ALTER ANY DATABASEEVENT NOTIFICATION | ALTER | Změnit libovolný EVENT NOTIFICATION |
| ALTER ANY DATABASEEVENT SESSION Platí pro: SQL Database. |
ALTER | Změnit libovolný EVENT SESSION |
| Změnit libovolný DATABASE SCOPED CONFIGURATION platí pro: SQL Server 2016 (13.x) a novější, SQL Database. |
CONTROL | řídicí server |
| ZMĚNIT JAKÝKOLIV DATOVÝ PROSTOR | ALTER | řídicí server |
| Změnit libovolný EXTERNAL DATA SOURCE | ALTER | řídicí server |
| Změnit libovolný EXTERNAL FILE FORMAT | ALTER | řídicí server |
| Změnit libovolný EXTERNAL LIBRARY Platí pro: SQL Server 2017 (14.x). |
CONTROL | řídicí server |
| Změnit libovolný FULLTEXT CATALOG | ALTER | řídicí server |
| ZMĚNIT JAKOUKOLIV MASKU | CONTROL | řídicí server |
| Změnit libovolný MESSAGE TYPE | ALTER | řídicí server |
| Změnit libovolný REMOTE SERVICE BINDING | ALTER | řídicí server |
| Změnit libovolný ROLE | ALTER | řídicí server |
| Změnit libovolný ROUTE | ALTER | řídicí server |
| Změnit libovolný SCHEMA | ALTER | řídicí server |
| Změnit libovolný SECURITY POLICY Platí pro: Azure SQL Database. |
CONTROL | řídicí server |
| Změnit libovolný SENSITIVITY CLASSIFICATION Platí pro: SQL Server (SQL Server 2019 a novější), Azure SQL Database. |
CONTROL | řídicí server |
| Změnit libovolný SERVICE | ALTER | řídicí server |
| Změnit libovolný SYMMETRIC KEY | ALTER | řídicí server |
| Změnit libovolný USER | ALTER | řídicí server |
| AUTHENTICATE | CONTROL | OVĚŘENÍ SERVERU |
| BACKUP DATABASE | CONTROL | řídicí server |
| BACKUP PROTOKOL | CONTROL | řídicí server |
| CHECKPOINT | CONTROL | řídicí server |
| CONNECT | REPLIKACE CONNECT | řídicí server |
| REPLIKACE CONNECT | CONTROL | řídicí server |
| CONTROL | CONTROL | řídicí server |
| CREATE AGGREGATE | ALTER | řídicí server |
| VYTVOŘTE LIBOVOLNÉ EXTERNAL LIBRARY Platí pro: SQL Server 2017 (14.x). |
CONTROL | řídicí server |
| CREATE ASSEMBLY | Změnit libovolný ASSEMBLY | řídicí server |
| CREATE ASYMMETRIC KEY | Změnit libovolný ASYMMETRIC KEY | řídicí server |
| CREATE CERTIFICATE | Změnit libovolný CERTIFICATE | řídicí server |
| CREATE CONTRACT | Změnit libovolný CONTRACT | řídicí server |
| CREATE DATABASE | CONTROL | VYTVOŘTE LIBOVOLNÉ DATABASE |
| CREATE DATABASE DDL EVENT NOTIFICATION | ALTER ANY DATABASEEVENT NOTIFICATION | VYTVOŘIT DDL EVENT NOTIFICATION |
| CREATE DEFAULT | ALTER | řídicí server |
| CREATE FULLTEXT CATALOG | Změnit libovolný FULLTEXT CATALOG | řídicí server |
| CREATE FUNCTION | ALTER | řídicí server |
| CREATE MESSAGE TYPE | Změnit libovolný MESSAGE TYPE | řídicí server |
| CREATE PROCEDURE | ALTER | řídicí server |
| CREATE QUEUE | ALTER | řídicí server |
| CREATE REMOTE SERVICE BINDING | Změnit libovolný REMOTE SERVICE BINDING | řídicí server |
| CREATE ROLE | Změnit libovolný ROLE | řídicí server |
| CREATE ROUTE | Změnit libovolný ROUTE | řídicí server |
| CREATE RULE | ALTER | řídicí server |
| CREATE SCHEMA | Změnit libovolný SCHEMA | řídicí server |
| CREATE SERVICE | Změnit libovolný SERVICE | řídicí server |
| CREATE SYMMETRIC KEY | Změnit libovolný SYMMETRIC KEY | řídicí server |
| CREATE SYNONYM | ALTER | řídicí server |
| CREATE TABLE | ALTER | řídicí server |
| CREATE TYPE | ALTER | řídicí server |
| CREATE VIEW | ALTER | řídicí server |
| CREATE XML SCHEMA COLLECTION | ALTER | řídicí server |
| DELETE | CONTROL | řídicí server |
| EXECUTE | CONTROL | řídicí server |
| SPUŠTĚNÍ LIBOVOLNÉHO EXTERNÍHO ENDPOINT Platí pro: Azure SQL Database. |
CONTROL | řídicí server |
| SPUŠTĚNÍ LIBOVOLNÉHO EXTERNÍHO SKRIPTU Platí pro: SQL Server 2016 (13.x). |
CONTROL | řídicí server |
| SPUŠTĚNÍ EXTERNÍHO SKRIPTU platí pro: SQL Server 2019 (15.x). |
SPUŠTĚNÍ LIBOVOLNÉHO EXTERNÍHO SKRIPTU | řídicí server |
| INSERT | CONTROL | řídicí server |
| UKONČENÍ DATABASE PŘIPOJENÍ Platí pro: Azure SQL Database. |
CONTROL | ZÁMĚNA JAKÉKOLIV PŘIPOJENÍ |
| REFERENCES | CONTROL | řídicí server |
| SELECT | CONTROL | řídicí server |
| SHOWPLAN | CONTROL | ALTEROVÁ STOPA |
| PŘIHLÁŠENÍ K ODBĚRU OZNÁMENÍ DOTAZŮ | CONTROL | řídicí server |
| PŘEVEZMĚTE ODPOVĚDNOST | CONTROL | řídicí server |
| UNMASK | CONTROL | řídicí server |
| UPDATE | CONTROL | řídicí server |
| VIEW JAKÁKOLI COLUMN ENCRYPTION KEY DEFINICE | CONTROL | VIEW JAKÁKOLI DEFINICE |
| VIEW JAKÁKOLI COLUMN MASTER KEY DEFINICE | CONTROL | VIEW JAKÁKOLI DEFINICE |
|
VIEW
DATABASE STAV VÝKONU Platí pro: SQL Server 2022 (16.x) a novější verze. |
VIEW DATABASE STÁT | VIEW STAV VÝKONU SERVERU |
|
VIEW
DATABASE STAV ZABEZPEČENÍ Platí pro: SQL Server 2022 (16.x) a novější verze. |
VIEW DATABASE STÁT | VIEW STAV ZABEZPEČENÍ SERVERU |
| VIEW DATABASE STÁT | CONTROL | VIEW STAV SERVERU |
| VIEW DEFINICE | CONTROL | VIEW JAKÁKOLI DEFINICE |
|
VIEW DEFINICE VÝKONU Platí pro: SQL Server 2022 (16.x) a novější verze. |
VIEW DEFINICE | VIEW JAKÁKOLI DEFINICE VÝKONU |
|
VIEW DEFINICE ZABEZPEČENÍ Platí pro: SQL Server 2022 (16.x) a novější verze. |
VIEW DEFINICE | VIEW JAKÁKOLI DEFINICE ZABEZPEČENÍ |
Permissions
Poskytovatel (nebo zmocnitel uvedený u AS option) musí mít buď samotné oprávnění s GRANT OPTION, nebo vyšší oprávnění, které znamená, že povolení bylo uděleno.
Pokud používáte možnost AS, platí následující další požadavky.
| JAKO granting_principal | Další požadovaná oprávnění |
|---|---|
| Uživatel databáze | ZOSOBNIT oprávnění pro uživatele, členství v db_securityadmin pevné databázové roli, členství v db_owner pevné databázové roli nebo členství v pevné roli serveru správce systému. |
| Uživatel databáze namapovaný na přihlášení k Systému Windows | ZOSOBNIT oprávnění pro uživatele, členství v db_securityadmin pevné databázové roli, členství v db_owner pevné databázové roli nebo členství v pevné roli serveru správce systému. |
| Uživatel databáze namapovaný na skupinu Windows | Členství ve skupině Windows, členství v db_securityadmin pevné databázové roli, členství v db_owner pevné databázové roli nebo členství v pevné roli serveru správce systému. |
| Uživatel databáze namapovaný na certifikát | Členství v db_securityadmin pevné databázové roli, členství v db_owner pevné databázové roli nebo členství v pevné roli serveru správce systému. |
| Uživatel databáze namapovaný na asymetrický klíč | Členství v db_securityadmin pevné databázové roli, členství v db_owner pevné databázové roli nebo členství v pevné roli serveru správce systému. |
| Uživatel databáze není namapovaný na žádný objekt zabezpečení serveru | ZOSOBNIT oprávnění pro uživatele, členství v db_securityadmin pevné databázové roli, členství v db_owner pevné databázové roli nebo členství v pevné roli serveru správce systému. |
| Role databáze | ALTER oprávnění k roli, členství v db_securityadmin pevné databázové roli, členství v db_owner pevné databázové roli nebo členství v pevné roli serveru správce systému. |
| Aplikační role | ALTER oprávnění k roli, členství v db_securityadmin pevné databázové roli, členství v db_owner pevné databázové roli nebo členství v pevné roli serveru správce systému. |
Vlastníci objektů můžou udělit oprávnění k objektům, které vlastní. Objekty zabezpečení, které mají oprávnění CONTROL k zabezpečitelnému, můžou udělit oprávnění k danému zabezpečitelnému objektu.
Udělení oprávnění CONTROL SERVER, jako jsou členové pevné role serveru sysadmin, mohou udělit jakékoli oprávnění na jakémkoli zabezpečitelném serveru na serveru.
Examples
A. Udělení oprávnění k vytváření tabulek
Následující příklad uděluje CREATE TABLE oprávnění k AdventureWorks databázi uživateli MelanieK.
USE AdventureWorks;
GRANT CREATE TABLE TO MelanieK;
GO
B. Udělení oprávnění SHOWPLAN roli aplikace
Následující příklad uděluje SHOWPLAN oprávnění k AdventureWorks2025 databázi k roli AuditMonitoraplikace .
Platí pro: SQL Server 2008 (10.0.x) a novější, SQL Database
USE AdventureWorks2022;
GRANT SHOWPLAN TO AuditMonitor;
GO
C. Udělení CREATE VIEW s GRANT možností OPTION
Následující příklad uděluje CREATE VIEW oprávnění k AdventureWorks2025 databázi uživateli CarmineEs s právem udělit CREATE VIEW jiným objektům zabezpečení.
USE AdventureWorks2022;
GRANT CREATE VIEW TO CarmineEs WITH GRANT OPTION;
GO
D. Udělení oprávnění CONTROL databázovému uživateli
Následující příklad uděluje CONTROL oprávnění k AdventureWorks2025 databázi uživateli Sarahdatabáze . Uživatel musí existovat v databázi a kontext musí být nastaven na databázi.
USE AdventureWorks2022;
GRANT CONTROL ON DATABASE::AdventureWorks2022 TO Sarah;
GO