Číst v angličtině

Sdílet prostřednictvím


Udělení oprávnění k uložené proceduře

platí pro:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

Tento článek popisuje, jak udělit oprávnění k uložené procedurě v SQL Serveru pomocí aplikace SQL Server Management Studio nebo Jazyk Transact-SQL. Oprávnění lze udělit stávajícímu uživateli, databázové roli nebo aplikační roli v databázi.

Omezení a restrikce

  • Aplikaci SQL Server Management Studio nemůžete použít k udělení oprávnění k systémovým postupům nebo systémovým funkcím. Místo toho použijte oprávnění k objektu GRANT (Transact-SQL).

oprávnění

Udělovač (nebo hlavní objekt určený pomocí možnosti AS) musí mít buď samotné oprávnění s GRANT OPTION, nebo vyšší oprávnění, které předpokládá udělování tohoto oprávnění. Vyžaduje ALTER oprávnění ke schématu, ke kterému procedura patří, nebo CONTROL oprávnění k postupu. Další informace najdete v tématu GRANT oprávnění k objektu.

Použití aplikace SQL Server Management Studio

Udělení oprávnění k uložené proceduře

  1. V Průzkumníku objektů se připojte k instanci databázového stroje a pak tuto instanci rozbalte.

  2. Rozbalte Databáze, rozbalte databázi, do které procedura patří, a potom rozbalte Programovatelnost.

  3. Rozbalte Uložené procedury, klepněte pravým tlačítkem myši na proceduru, na kterou chcete udělit oprávnění, a poté vyberte Vlastnosti.

  4. V Vlastnosti uložené proceduryvyberte stránku Oprávnění.

  5. Pokud chcete udělit oprávnění k roli uživatele, databázové role nebo aplikace, vyberte Hledat.

  6. V Vyberte uživatele nebo rolevyberte Typy objektů a přidejte nebo odeberte požadované uživatele a role.

  7. Vyberte Procházet pro zobrazení seznamu uživatelů nebo rolí. Vyberte uživatele nebo role, kterým mají být udělena oprávnění.

  8. V mřížce Explicitní oprávnění vyberte oprávnění, která chcete přiřadit zadanému uživateli nebo roli. Popis oprávnění naleznete v tématu Oprávnění (databázový stroj).

Když vyberete Udělit označíte, že se mu udělí zadané oprávnění. Výběr možnosti Udělení pomocí znamená, že příjemce bude moct udělit také zadané oprávnění jiným objektům zabezpečení.

Použij Transact-SQL

Udělení oprávnění k uložené proceduře

  1. Připojte se k databázovému stroji.

  2. Na panelu Standard vyberte Nový dotaz.

  3. Zkopírujte a vložte následující příklad do okna dotazu a vyberte Spustit. Tento příklad uděluje oprávnění EXECUTE k uložené proceduře HumanResources.uspUpdateEmployeeHireInfo roli aplikace nazvanou Recruiting11.

SQL
USE AdventureWorks2022;
GRANT EXECUTE ON OBJECT::HumanResources.uspUpdateEmployeeHireInfo
    TO Recruiting11;
GO

Udělení oprávnění pro všechny uložené procedury ve schématu

  1. Připojte se k databázovému stroji.

  2. Na panelu Standard vyberte Nový dotaz.

  3. Zkopírujte a vložte následující příklad do okna dotazu a vyberte Spustit. Tento příklad uděluje EXECUTE oprávnění ke všem uloženým procedurům, které existují nebo budou existovat ve schématu HumanResources, roli aplikace s názvem Recruiting11.

SQL
USE AdventureWorks2022;
GRANT EXECUTE ON SCHEMA::HumanResources
    TO Recruiting11;
GO