Sdílet prostřednictvím


Oprávnění k objektu zabezpečení databáze REVOKE (Transact-SQL)

platí pro:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceSQL databáze v Microsoft Fabric

Odvolá oprávnění udělená nebo odepřená u uživatele databáze, role databáze nebo aplikační role.

Transact-SQL konvence syntaxe

Syntax

REVOKE [ GRANT OPTION FOR ] permission [ ,...n ]    
    ON   
    {  [ USER :: database_user ]  
       | [ ROLE :: database_role ]  
       | [ APPLICATION ROLE :: application_role ]  
    }  
    { FROM | TO } <database_principal> [ ,...n ]  
        [ CASCADE ]  
    [ AS <database_principal> ]  
  
<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

permission
Určuje oprávnění, které lze odvolat u instančního objektu databáze. Seznam oprávnění najdete v části Poznámky dále v tomto tématu.

UŽIVATEL ::database_user
Určuje třídu a název uživatele, u kterého se oprávnění odvolává. Je vyžadován kvalifikátor oboru (::).

ROLE ::database_role
Určuje třídu a název role, pro kterou se oprávnění odvolává. Je vyžadován kvalifikátor oboru (::).

APLIKAČNÍ ROLE ::application_role
Platí pro: SQL Server 2008 (10.0.x) a novější, SQL Database

Určuje třídu a název role aplikace, na které se oprávnění odvolává. Je vyžadován kvalifikátor oboru (::).

MOŽNOST GRANTU
Označuje, že bude odvolána práva k udělení zadaného oprávnění jiným objektům zabezpečení. Samotná oprávnění nebudou odvolána.

Important

Pokud má objekt zabezpečení zadané oprávnění bez možnosti GRANT, zruší se oprávnění samotné.

CASCADE
Označuje, že odvolávané oprávnění je také odvoláno z jiných objektů zabezpečení, ke kterým byl udělen nebo odepřen tímto objektem zabezpečení.

Caution

Kaskádové odvolání oprávnění uděleného FUNKCÍ GRANT OPTION odvolá oprávnění GRANT i ODEPŘÍT toto oprávnění.

AS <database_principal> Určuje objekt zabezpečení, ze kterého objekt zabezpečení, který spouští tento dotaz, odvozuje své právo odvolat oprávnění.

Database_user
Určuje uživatele databáze.

Database_role
Určuje roli databáze.

Application_role
Platí pro: SQL Server 2008 (10.0.x) a novější, SQL Database

Určuje roli aplikace.

Database_user_mapped_to_Windows_User
Platí 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_Group
Platí pro: SQL Server 2008 (10.0.x) a novější

Určuje uživatele databáze mapované na skupinu Windows.

Database_user_mapped_to_certificate
Platí 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_key
Platí 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

Uživatelská oprávnění databáze

Uživatel databáze je zabezpečitelná databáze obsažená v databázi, která je jejím nadřazeným objektem v hierarchii oprávnění. Nejvýraznější a omezená oprávnění, která lze odvolat u uživatele databáze, jsou uvedena v následující tabulce společně s obecnějšími oprávněními, která je zahrnují implikací.

Oprávnění uživatele databáze Implicitní oprávnění uživatele databáze Implicitní oprávnění databáze
CONTROL CONTROL CONTROL
IMPERSONATE CONTROL CONTROL
ALTER CONTROL ZMĚNA LIBOVOLNÉHO UŽIVATELE
ZOBRAZIT DEFINICI CONTROL ZOBRAZIT DEFINICI

Oprávnění databázové role

Role databáze je zabezpečitelná databáze obsažená v databázi, která je nadřazená v hierarchii oprávnění. Nejvýraznější a omezená oprávnění, která je možné odvolat u databázové role, jsou uvedena v následující tabulce společně s obecnějšími oprávněními, která je zahrnují implikací.

Oprávnění k databázové roli Implicitní oprávnění databázové role Implicitní oprávnění databáze
CONTROL CONTROL CONTROL
PŘEVEZMĚTE ODPOVĚDNOST CONTROL CONTROL
ALTER CONTROL ZMĚNIT JAKOUKOLI ROLI
ZOBRAZIT DEFINICI CONTROL ZOBRAZIT DEFINICI

Oprávnění role aplikace

Role aplikace je zabezpečitelná databáze obsažená v databázi, která je jejím nadřazeným objektem v hierarchii oprávnění. Nejvýraznější a omezená oprávnění, která je možné odvolat u role aplikace, jsou uvedená v následující tabulce společně s obecnějšími oprávněními, která je zahrnují implikací.

Oprávnění role aplikace Implicitní oprávnění role aplikace Implicitní oprávnění databáze
CONTROL CONTROL CONTROL
ALTER CONTROL ZMĚNIT JAKOUKOLI APLIKAČNÍ ROLI
ZOBRAZIT DEFINICI CONTROL ZOBRAZIT DEFINICI

Permissions

Vyžaduje oprávnění CONTROL u zadaného objektu zabezpečení nebo vyšší oprávnění, které znamená oprávnění CONTROL.

Udělení oprávnění CONTROL k databázi, jako jsou členové db_owner pevné databázové role, mohou udělit jakékoli oprávnění k jakémukoli zabezpečitelnému v databázi.

Examples

A. Odvolání oprávnění CONTROL pro uživatele od jiného uživatele

Následující příklad odvolá CONTROL oprávnění uživatele AdventureWorks2025 od uživatele WanidaRolandX.

USE AdventureWorks2022;  
REVOKE CONTROL ON USER::Wanida FROM RolandX;  
GO  

B. Odvolání oprávnění VIEW DEFINITION u role od uživatele, ke kterému byla udělena POMOCÍ MOŽNOSTI UDĚLENÍ

Následující příklad odvolá VIEW DEFINITION oprávnění k AdventureWorks2025 roli SammamishParking od uživatele JinghaoLiudatabáze . Možnost je zadána CASCADE , protože uživatel JinghaoLiu byl udělen VIEW DEFINITION oprávnění WITH GRANT OPTION.

USE AdventureWorks2022;  
REVOKE VIEW DEFINITION ON ROLE::SammamishParking   
    FROM JinghaoLiu CASCADE;  
GO  

C. Odvolání oprávnění IMPERSONATE pro uživatele z role aplikace

Následující příklad odvolá IMPERSONATE oprávnění uživatele HamithaL z AdventureWorks2025 role AccountsPayable17aplikace .

Platí pro: SQL Server 2008 (10.0.x) a novější, SQL Database

USE AdventureWorks2022;  
REVOKE IMPERSONATE ON USER::HamithaL FROM AccountsPayable17;  
GO    

Viz také

oprávnění objektu zabezpečení databáze GRANT (Transact-SQL)
Odepřít oprávnění objektu zabezpečení databáze (Transact-SQL)
sys.database_principals (Transact-SQL)
sys.database_permissions (Transact-SQL)
VYTVOŘIT UŽIVATELE (Transact-SQL)
VYTVOŘENÍ APLIKAČNÍ ROLE (Transact-SQL)
VYTVOŘIT ROLI (Transact-SQL)
GRANT (Transact-SQL)
Oprávnění (databázový stroj)
Hlavní subjekty (databázový stroj)