安全对象

适用于:SQL ServerAzure SQL 数据库Azure SQL 托管实例Azure Synapse AnalyticsAnalytics Platform System (PDW)

安全对象是 SQL Server 数据库引擎 授权系统控制对其进行访问的资源。 例如,表是安全对象。 通过创建可以为自己设置安全性的名为“范围”的嵌套层次结构,可以将某些安全对象包含在其他安全对象中。 安全对象范围有 服务器数据库架构

安全对象范围:服务器

服务器 安全对象范围包含以下安全对象:

  • 可用性组 (availability group)

  • 端点

  • 登录

  • 服务器角色

  • 数据库

安全对象范围:数据库

数据库 安全对象范围包含以下安全对象:

  • 应用程序角色

  • Assembly

  • 非对称密钥

  • 证书

  • 合约

  • 全文目录

  • 全文非索引字表

  • 消息类型

  • 远程服务绑定

  • (数据库)角色

  • 路由

  • 架构

  • 搜索属性列表

  • 服务

  • 对称密钥

  • 用户

安全对象范围:架构

架构 安全对象范围包含以下安全对象:

  • 类型

  • XML 架构集合

  • 对象 - 对象类包含以下成员:

    • 聚合

    • 函数

    • 过程

    • 队列

    • 同义词

    • 查看

    • 外部表

控制对安全对象的访问

接收对安全对象的权限的实体称为主体。 最常见的主体是登录名和数据库用户。 对安全对象的访问通过授予或拒绝权限进行控制,或者通过将登录名和用户添加到有权访问的角色进行控制。 有关控制权限的信息,请参阅 GRANT (Transact-SQL) REVOKE (Transact-SQL) DENY (Transact-SQL) sp_addrolemember (Transact-SQL) sp_droprolemember (Transact-SQL)

注意

安装期间授予系统对象的默认权限已针对可能的威胁进行了仔细评估,并且作为强化 SQL Server 安装的一部分,无需进行更改。 对系统对象权限的任何更改都可能限制或破坏功能,并且可能让你的 SQL Server 安装处于不受支持的状态。

数据库引擎权限入门

保护 SQL Server

sys.database_principals (Transact-SQL)

sys.database_role_members (Transact-SQL)

sys.server_principals (Transact-SQL)

sys.server_role_members (Transact-SQL)

sys.sql_logins (Transact-SQL)