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

Применимо к:SQL ServerAzure SQL DatabaseAzure Managed InstanceAzure Synapse Analytics AnalyticsPlatform System (PDW)

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

На следующем рисунке показаны связи между иерархиями ядра СУБД.

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

Diagram of Database Engine permissions hierarchies

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

Диаграмма размера плаката всех разрешений ядра СУБД в формате 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
Разрешения (ядро СУБД)
Защищаемые объекты
Субъекты (ядро СУБД)
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)