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 Managed Instance
Odebírá oprávnění k tabulce, pohledu, tabulové funkci, uložené procedurě, rozšířené uložené procedurě, skalární funkci, agregační funkci, frontě služeb nebo synonymu.
Syntaxe
REVOKE [ GRANT OPTION FOR ] <permission> [ ,...n ] ON
[ OBJECT :: ][ schema_name ]. object_name [ ( column [ ,...n ] ) ]
{ FROM | TO } <database_principal> [ ,...n ]
[ CASCADE ]
[ AS <database_principal> ]
<permission> ::=
ALL [ PRIVILEGES ] | permission [ ( column [ ,...n ] ) ]
<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
Specifikuje oprávnění, které lze na objektu obsahujícím schéma zrušit. Seznam oprávnění najdete v sekci Poznámky později v tomto tématu.
ALL
Odebrání VŠECH neznamená odebrání všech možných oprávnění. Zrušení ALL je ekvivalentní odebrání všech oprávnění ANSI-92 vztahujících se na specifikovaný objekt. Význam ALL se liší takto:
Oprávnění skalárních funkcí: EXECUTE, REFERENCES.
Oprávnění funkce s hodnotou tabulky: DELETE, INSERT, REFERENCES, SELECT, UPDATE.
Oprávnění uložená procedura: EXECUTE.
Oprávnění tabulky: DELETE, INSERT, REFERENCES, SELECT, UPDATE.
Zobrazit oprávnění: DELETE, INSERT, REFERENCES, SELECT, UPDATE.
PRIVILEGES
Součástí je dodržování předpisů ANSI-92. Nemění chování funkce ALL.
sloupce
Specifikuje název sloupce v tabulce, zobrazení nebo tabulce hodnotové funkce, na kterou je oprávnění odebíráno. Jsou vyžadovány závorky (). Ve sloupci je možné odepřít pouze oprávnění SELECT, REFERENCES a UPDATE.
sloupec lze zadat v klauzuli oprávnění nebo za zabezpečitelným názvem.
NA [ OBJEKT :: ] [ schema_name ] .
object_name
Specifikuje objekt, na kterém je oprávnění odebíráno. Pokud je zadána schema_name, je fráze OBJECT volitelná. Pokud se použije fráze OBJECT, je vyžadován kvalifikátor oboru (::). Pokud schema_name není specifikováno, použije se výchozí schéma. Pokud je schema_name specifikováno, je vyžadován kvalifikátor rozsahu schématu (.),
{ Z | TO } <database_principal> Specifikuje princip, od kterého je oprávnění odebráno.
MOŽNOST GRANTU
Označuje, že právo udělit stanovené povolení ostatním principálům bude odebráno. Samotné povolení nebude zrušeno.
Důležité
Pokud má hlavní subjekt specifikované povolení bez možnosti GRANT, samotné oprávnění bude zrušeno.
CASCADE
Označuje, že povolení, které bylo odebráno, je také odebráno dalším zmocnitelům, kterým bylo tímto zmocnitelem uděleno nebo zamítnuto.
Upozornění
Kaskádové zrušení povolení uděleného S GRANT OPTION odebere jak GRANT, tak DENY toto povolení.
AS <database_principal> Specifikuje princip, ze kterého princip provádějící tento dotaz získává právo povolení odebrat.
Database_user
Specifikuje uživatele databáze.
Database_role
Specifikuje databázovou roli.
Application_role
Specifikuje aplikační roli.
Database_user_mapped_to_Windows_User
Specifikuje uživatele databáze přiřazeného uživateli Windows.
Database_user_mapped_to_Windows_Group
Specifikuje uživatele databáze přiřazeného ke skupině Windows.
Database_user_mapped_to_certificate
Specifikuje uživatele databáze přiřazeného k certifikátu.
Database_user_mapped_to_asymmetric_key
Specifikuje uživatele databáze přiřazeného asymetrickému klíči.
Database_user_with_no_login
Specifikuje uživatele databáze bez odpovídajícího serverového principu.
Poznámky
Informace o objektech jsou viditelné v různých zobrazeních katalogu. Další informace naleznete v tématu Zobrazení katalogu objektů (Transact-SQL).
Objekt je zabezpečitelná na úrovni schématu obsažená schématem, který je jeho nadřazeným objektem v hierarchii oprávnění. Nejspecifičtější a nejomezenější oprávnění, která lze na objektu zrušit, jsou uvedena v následující tabulce spolu s obecnějšími oprávněními, která je zahrnují implicitně.
| Oprávnění objektu | Implicitní oprávnění objektu | Implicitně povoleno schématem |
|---|---|---|
| ZMĚNA | CONTROL | ZMĚNA |
| CONTROL | CONTROL | CONTROL |
| DELETE | CONTROL | DELETE |
| EXECUTE | CONTROL | EXECUTE |
| INSERT | CONTROL | INSERT |
| RECEIVE | CONTROL | CONTROL |
| REFERENCES | CONTROL | REFERENCES |
| SELECT | RECEIVE | SELECT |
| PŘEVEZMĚTE ODPOVĚDNOST | CONTROL | CONTROL |
| Aktualizace | CONTROL | Aktualizace |
| ZOBRAZIT SLEDOVÁNÍ ZMĚN | CONTROL | ZOBRAZIT SLEDOVÁNÍ ZMĚN |
| ZOBRAZIT DEFINICI | CONTROL | ZOBRAZIT DEFINICI |
Povolení
Vyžaduje oprávnění CONTROL k objektu.
Pokud použijete klauzuli AS, musí objekt, na kterém jsou oprávnění odebírána, vlastnit konkrétní principal.
Examples
A. Odebrání povolení SELECT na tabulce
Následující příklad odebírá SELECT uživateli RosaQdM oprávnění k tabulce Person.Address v databázi AdventureWorks2025 .
USE AdventureWorks2022;
REVOKE SELECT ON OBJECT::Person.Address FROM RosaQdM;
GO
B. Zrušení povolení EXECUTE na uložené procedurě
Následující příklad ruší EXECUTE oprávnění k uložené procedurě HumanResources.uspUpdateEmployeeHireInfo z aplikační role nazvané Recruiting11.
USE AdventureWorks2022;
REVOKE EXECUTE ON OBJECT::HumanResources.uspUpdateEmployeeHireInfo
FROM Recruiting11;
GO
C. Odebrání povolení REFERENCES na zobrazení pomocí CASCADE
Následující příklad odebírá REFERENCES oprávnění na sloupec BusinessEntityID v zobrazení HumanResources.vEmployee od uživatele Wanida s CASCADE.
USE AdventureWorks2022;
REVOKE REFERENCES (BusinessEntityID) ON OBJECT::HumanResources.vEmployee
FROM Wanida CASCADE;
GO
Viz také
Oprávnění k objektu GRANT (Transact-SQL)
Odepřít oprávnění objektu (Transact-SQL)
zobrazení katalogu objektů (Transact-SQL)
Oprávnění (databázový stroj)
Hlavní subjekty (databázový stroj)
Securables
sys.fn_vestavěná_oprávnění (Transact-SQL)
HAS_PERMS_BY_NAME (Transact-SQL)
sys.fn_my_permissions (Transact-SQL)