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
Odebere dříve udělené nebo odepřené oprávnění.
Syntax
Syntaxe pro SQL Server, Azure SQL Database a databázi SQL Fabric
-- Simplified syntax for REVOKE
REVOKE [ GRANT OPTION FOR ]
{
[ ALL [ PRIVILEGES ] ]
|
permission [ ( column [ ,...n ] ) ] [ ,...n ]
}
[ ON [ class :: ] securable ]
{ TO | FROM } principal [ ,...n ]
[ CASCADE] [ AS principal ]
Syntaxe pro Azure Synapse Analytics, paralelní datový sklad a sklad Microsoft Fabric
REVOKE
<permission> [ ,...n ]
[ ON [ <class_type> :: ] securable ]
[ FROM | TO ] principal [ ,...n ]
[ CASCADE ]
[;]
<permission> ::=
{ see the tables below }
<class_type> ::=
{
LOGIN
| DATABASE
| OBJECT
| ROLE
| SCHEMA
| USER
}
Arguments
MOŽNOST UDĚLENÍ PRO
Označuje, že možnost udělit zadané oprávnění bude odvolána. To se vyžaduje při použití argumentu CASCADE.
Important
Pokud má objekt zabezpečení zadané oprávnění bez možnosti GRANT, zruší se oprávnění samotné.
ALL
Platí pro: SQL Server 2008 (10.0.x) a novější
Tato možnost neodvolá všechna možná oprávnění. Odvolání funkce ALL je ekvivalentní odvolání následujících oprávnění.
Pokud je zabezpečitelná databáze, ZNAMENÁ TO VŠE ZÁLOHOVACÍ DATABÁZE, PROTOKOL ZÁLOHOVÁNÍ, CREATE DATABASE, CREATE DEFAULT, CREATE FUNCTION, CREATE PROCEDURE, CREATE RULE, CREATE TABLE a CREATE VIEW.
Pokud je zabezpečitelná skalární funkce, znamená TO VŠECHNY příkazy EXECUTE a REFERENCES.
Pokud je zabezpečitelná funkce s hodnotou tabulky, ZNAMENÁ TO VŠECHNY PŘÍKAZY DELETE, INSERT, REFERENCES, SELECT a UPDATE.
Pokud je zabezpečitelná uložená procedura, znamená to ALL execute.
Pokud je zabezpečitelná tabulka, znamená TO VŠECHNY PŘÍKAZY DELETE, INSERT, REFERENCES, SELECT a UPDATE.
Pokud je zabezpečitelné zobrazení, znamená to VŠECHNY PŘÍKAZY DELETE, INSERT, REFERENCES, SELECT a UPDATE.
Note
Syntaxe REVOKE ALL je zastaralá. Tato funkce bude odebrána v budoucí verzi SQL Serveru. Nepoužívejte tuto funkci v nové vývojové práci a naplánujte úpravu aplikací, které tuto funkci aktuálně používají. Místo toho odvolat konkrétní oprávnění.
PRIVILEGES
Součástí je dodržování předpisů ISO. Nemění chování funkce ALL.
permission
Je název oprávnění. Platné mapování oprávnění na zabezpečitelné jsou popsána v tématech uvedených v části Syntaxe specifická pro zabezpečitelné dále v tomto tématu.
column
Určuje název sloupce v tabulce, u kterého se odvolají oprávnění. Jsou vyžadovány závorky.
class
Určuje třídu zabezpečitelné, pro kterou je oprávnění odvolána. Kvalifikátor oboru :: je povinný.
securable
Určuje zabezpečitelný, na kterém se oprávnění odvolává.
TO | Instanční objekt FROM
Je název objektu zabezpečení. Objekty zabezpečení, ze kterých se dají odvolat oprávnění k zabezpečitelnému přístupu, se liší v závislosti na zabezpečitelném objektu. Další informace o platných kombinacích najdete v tématech uvedených v části Syntaxe specifická pro zabezpečitelné informace dále v tomto tématu.
CASCADE
Označuje, že oprávnění, která je odvolána, je také odvolána z jiných objektů zabezpečení, ke kterým byl udělen tímto objektem zabezpečení. Při použití argumentu CASCADE musíte také zahrnout argument GRANT OPTION FOR.
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 ředitel
Pomocí klauzule instančního objektu AS označíte, že odvoláváte oprávnění udělená jiným objektem zabezpečení než vy. Například předpokládáme, že uživatel Mary je principal_id 12 a uživatel Raul je principal_id 15. Mary i Raul udělí uživateli jménem Steven stejné oprávnění. Tabulka sys.database_permissions označuje oprávnění dvakrát, ale každá z nich bude mít jinou grantor_principal_id hodnotu. Mary by mohla odvolat oprávnění pomocí AS RAUL klauzule k odebrání udělení oprávnění Raul.
Použití AS v tomto prohlášení neznamená schopnost zosobnit jiného uživatele.
Remarks
Úplná syntaxe příkazu REVOKE je složitá. Výše uvedený diagram syntaxe byl zjednodušen tak, aby upoutat pozornost na jeho strukturu. Úplná syntaxe pro odvolání oprávnění k určitým zabezpečitelným účelům je popsána v tématech uvedených v části Syntaxe specifická pro zabezpečitelnost dále v tomto tématu.
Příkaz REVOKE lze použít k odebrání udělených oprávnění a příkaz DENY lze použít k tomu, aby objekt zabezpečení získal konkrétní oprávnění prostřednictvím grantu.
Udělení oprávnění odebere odepřít nebo ODVOLAT dané oprávnění u zadaného zabezpečitelného oprávnění. Pokud je stejné oprávnění odepřeno ve vyšším rozsahu, který obsahuje zabezpečitelné, má přednost denY. Odvolání uděleného oprávnění ve vyšším rozsahu však nemá přednost.
Caution
Odepření na úrovni tabulky nemá přednost před udělením na úrovni sloupce. Tato nekonzistence v hierarchii oprávnění byla zachována kvůli zpětné kompatibilitě. V budoucí verzi se odebere.
Systémová uložená procedura sp_helprotect hlásí oprávnění k zabezpečitelné úrovni databáze.
Příkaz REVOKE selže, pokud se při odvolání oprávnění z objektu zabezpečení uděleného oprávnění se zadaným parametrem GRANT OPTION nezadá.
Permissions
Objekty zabezpečení s oprávněním CONTROL pro zabezpečitelné můžou odvolat oprávnění k danému zabezpečitelnému objektu. Vlastníci objektů mohou odvolat oprávnění k objektům, které vlastní.
Udělení oprávnění CONTROL SERVER, jako jsou členové pevné role serveru správce systému, mohou odvolat všechna oprávnění na jakémkoli zabezpečitelném serveru. Udělení oprávnění CONTROL k databázi, jako jsou členové db_owner pevné databázové role, mohou odvolat všechna oprávnění k jakémukoli zabezpečitelnému v databázi. Udělení oprávnění CONTROL schématu může odvolat jakékoli oprávnění k libovolnému objektu v rámci schématu.
Syntax specifická pro zajištění
V následující tabulce jsou uvedeny zabezpečitelné položky a témata, která popisují syntaxi specifickou pro zabezpečitelnou.
Examples
A. Udělení a odvolání
Platí pro: SQL Server, SQL Database
Následující příklad vytvoří schéma, uživatele databáze s omezením a novou roli v uživatelské databázi. Přidá uživatele do role, udělí k této roli oprávnění SELECT schématu a pak odebere (REVOKE) toto oprávnění k této roli.
CREATE SCHEMA Sales;
GO
CREATE USER Joe without login;
GO
CREATE ROLE Vendors;
GO
ALTER ROLE Vendors ADD MEMBER Joe;
GO
GRANT SELECT ON SCHEMA :: Sales TO Vendors;
GO
REVOKE SELECT ON SCHEMA :: Sales TO Vendors;
GO
Viz také
hierarchie oprávnění
Odepřít (Transact-SQL)
GRANT (Transact-SQL)
sp_addlogin (Transact-SQL)
sp_adduser (Transact-SQL)
sp_changedbowner (Transact-SQL)
sp_dropuser (Transact-SQL)
sp_helprotect (Transact-SQL)
sp_helpuser (Transact-SQL)