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

ОБЛАСТЬ ПРИМЕНЕНИЯ: даSQL Server даБаза данных SQL Azure даAzure Synapse Analytics (хранилище данных SQL) даParallel Data Warehouse APPLIES TO: yesSQL Server yesAzure SQL Database yesAzure Synapse Analytics (SQL DW) yesParallel Data Warehouse

Компонент Компонент Database EngineDatabase Engine управляет иерархической коллекцией сущностей, защита которых производится при помощи разрешений.The Компонент Database EngineDatabase Engine manages a hierarchical collection of entities that can be secured with permissions. Эти сущности называются защищаемыми объектами.These entities are known as securables. Важнейшими защищаемыми компонентами являются серверы и базы данных, однако отдельные разрешения можно задавать на гораздо более глубоком уровне.The most prominent securables are servers and databases, but discrete permissions can be set at a much finer level. SQL ServerSQL Server регулирует действия участников на защищаемых объектах, проверяя, что им были предоставлены соответствующие разрешения.regulates the actions of principals on securables by verifying that they have been granted appropriate permissions.

На следующей иллюстрации показана связь между иерархиями разрешений компонента Компонент Database EngineDatabase Engine .The following illustration shows the relationships among the Компонент Database EngineDatabase Engine permissions hierarchies.

Система разрешений работает одинаково во всех версиях SQL ServerSQL Server, База данных SQLSQL Database, Azure Synapse Analytics (прежнее название — хранилище данных SQL)Azure Synapse Analytics (Formerly SQL Data Warehouse), Система платформы аналитикиAnalytics Platform System, однако некоторые возможности доступны не во всех версиях.The permissions system works the same in all versions of SQL ServerSQL Server, База данных SQLSQL Database, Azure Synapse Analytics (прежнее название — хранилище данных SQL)Azure Synapse Analytics (Formerly SQL Data Warehouse), Система платформы аналитикиAnalytics Platform System, however some features are not available in all versions. Например нельзя настроить разрешение уровня сервера в продуктах Azure.For example, server-level permission cannot be configured in Azure products.

Диаграмма иерархий разрешений в ядре СУБДDiagram of Database Engine permissions hierarchies

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

Схему плакатного размера всех разрешений компонента Компонент Database EngineDatabase Engine в формате PDF см. по ссылке https://aka.ms/sql-permissions-poster.For a poster sized chart of all Компонент Database EngineDatabase Engine permissions in pdf format, see https://aka.ms/sql-permissions-poster.

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

Выполнение различных действий с разрешениями осуществляется при помощи обычных запросов Transact-SQLTransact-SQL : GRANT, DENY и REVOKE.Permissions can be manipulated with the familiar Transact-SQLTransact-SQL queries GRANT, DENY, and REVOKE. Сведения о разрешениях доступны через представления каталога sys.server_permissions и sys.database_permissions .Information about permissions is visible in the sys.server_permissions and sys.database_permissions catalog views. Существует также поддержка запроса сведений о разрешениях при помощи встроенных функций.There is also support for querying permissions information by using built-in functions.

Сведения о проектировании системы разрешений см. в статье Getting Started with Database Engine Permissions.For information about designing a permissions system, see Getting Started with Database Engine Permissions.

См. также:See Also

Обеспечение безопасности SQL Server Securing SQL Server
Разрешения (ядро СУБД) Permissions (Database Engine)
Securables Securables
Участники (ядро СУБД) Principals (Database Engine)
GRANT (Transact-SQL) GRANT (Transact-SQL)
REVOKE (Transact-SQL) REVOKE (Transact-SQL)
DENY (Transact-SQL) DENY (Transact-SQL)
HAS_PERMS_BY_NAME (Transact-SQL) HAS_PERMS_BY_NAME (Transact-SQL)
sys.fn_builtin_permissions (Transact-SQL) sys.fn_builtin_permissions (Transact-SQL)
sys.server_permissions (Transact-SQL) sys.server_permissions (Transact-SQL)
sys.database_permissions (Transact-SQL)sys.database_permissions (Transact-SQL)