Иерархия разрешений (компонент Database Engine)

Применимо к: SQL Server Azure SQL DatabaseУправляемый экземпляр SQL AzureAzure Synapse AnalyticsAnalytics Platform System (PDW)

Компонент Компонент Database Engine управляет иерархической коллекцией сущностей, защита которых производится при помощи разрешений. Эти сущности называются защищаемыми объектами. Важнейшими защищаемыми компонентами являются серверы и базы данных, однако отдельные разрешения можно задавать на гораздо более глубоком уровне. SQL Server регулирует действия участников на защищаемых объектах, проверяя, что им были предоставлены соответствующие разрешения.

На следующей иллюстрации показана связь между иерархиями разрешений компонента Компонент Database Engine .

Система разрешений работает одинаково во всех версиях SQL Server, База данных SQL, Azure Synapse Analytics, Analytics Platform System, однако некоторые функции доступны не во всех версиях. Например нельзя настроить разрешение уровня сервера в продуктах Azure.

Схема иерархий разрешений ядра СУБД

Диаграмма разрешений SQL Server

Схему плакатного размера всех разрешений компонента Компонент Database Engine в формате PDF см. по ссылке https://aka.ms/sql-permissions-poster.

Работа с разрешениями

Разрешениями можно управлять с помощью знакомых запросов Transact-SQL GRANT, DENY и REVOKE. Сведения о разрешениях доступны через представления каталога sys.server_permissions и sys.database_permissions . Существует также поддержка запроса сведений о разрешениях при помощи встроенных функций.

Сведения о проектировании системы разрешений см. в статье Getting Started with Database Engine Permissions.

См. также:

Обеспечение безопасности SQL Server
Разрешения (ядро СУБД)
Защищаемые объекты
Субъекты (компонент Database Engine)
Инструкция GRANT (Transact-SQL)
REVOKE (Transact-SQL)
DENY (Transact-SQL)
HAS_PERMS_BY_NAME (Transact-SQL)
sys.fn_builtin_permissions (Transact-SQL)
sys.server_permissions (Transact-SQL)
sys.database_permissions (Transact-SQL)