数据库引擎管理可以使用权限保护的实体的分层集合。 这些实体称为 安全对象。 最突出的安全对象是服务器和数据库,但可以更精细地设置离散权限。 SQL Server 通过验证主体是否已获得适当的权限来规范主体对安全对象的操作。
下图显示了数据库引擎权限层次结构之间的关系。
SQL Server 权限图表
有关 pdf 格式的所有数据库引擎权限的海报大小图表,请参阅 https://github.com/microsoft/sql-server-samples/blob/master/samples/features/security/permissions-posters/Microsoft_SQL_Server_2017_and_Azure_SQL_Database_permissions_infographic.pdf。
使用权限
可以使用熟悉的 Transact-SQL 查询 GRANT、DENY 和 REVOKE 来操作权限。 有关权限的信息在 sys.server_permissions 和 sys.database_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)