微软服务器sql server,服务器级别角色 - SQL Server | Microsoft Docs

服务器级别角色

05/24/2017

本文内容

适用于:

719f28649793c602f9270966b5ed5c39.png

SQL Server

0fb8175bdc94aea62328b76308b7d35a.png

Azure SQL 数据库

0fb8175bdc94aea62328b76308b7d35a.png

Azure Synapse Analytics

719f28649793c602f9270966b5ed5c39.png

并行数据仓库

SQL Server 提供服务器级角色以帮助你管理服务器上的权限。 这些角色是可组合其他主体的安全主体。 服务器级角色的权限作用域为服务器范围。 (“角色”类似于 Windows 操作系统中的“组”。)

提供固定服务器角色是为了方便使用和向后兼容。 应尽可能分配更具体的权限。

SQL Server 提供了九种固定服务器角色。 无法更改授予固定服务器角色(public 角色除外)的权限。 从 SQL Server 2012 (11.x)开始,您可以创建用户定义的服务器角色,并将服务器级权限添加到用户定义的服务器角色。

你可以将服务器级主体(SQL Server 登录名、Windows 帐户和 Windows 组)添加到服务器级角色。 固定服务器角色的每个成员都可以将其他登录名添加到该同一角色。 用户定义的服务器角色的成员则无法将其他服务器主体添加到角色。

备注

服务器级权限不适用于 SQL 数据库或 Azure Synapse Analytics。 有关 SQL 数据库的详细信息,请参阅控制和授予数据库访问权限。

服务器级的固定角色

下表显示了服务器级的固定角色及其权限。

服务器级的固定角色

说明

sysadmin

sysadmin 固定服务器角色的成员可以在服务器上执行任何活动。

serveradmin

serveradmin 固定服务器角色的成员可以更改服务器范围的配置选项和关闭服务器。

securityadmin

securityadmin 固定服务器角色的成员可以管理登录名及其属性。 他们可以 GRANT、DENY 和 REVOKE 服务器级权限。 他们还可以 GRANT、DENY 和 REVOKE 数据库级权限(如果他们具有数据库的访问权限)。 此外,他们还可以重置 SQL Server 登录名的密码。

重要提示: 如果能够授予对 数据库引擎 的访问权限和配置用户权限,安全管理员可以分配大多数服务器权限。 securityadmin 角色应视为与 sysadmin 角色等效。

processadmin

processadmin 固定服务器角色的成员可以终止在 SQL Server 实例中运行的进程。

setupadmin

setupadmin 固定服务器角色的成员可以使用 Transact-SQL 语句添加和删除链接服务器。 (使用 Management Studio 时需要 sysadmin 成员资格。)

bulkadmin

bulkadmin 固定服务器角色的成员可以运行 BULK INSERT 语句。

diskadmin

diskadmin 固定服务器角色用于管理磁盘文件。

dbcreator

dbcreator 固定服务器角色的成员可以创建、更改、删除和还原任何数据库。

public

每个 SQL Server 登录名都属于 public 服务器角色。 如果未向某个服务器主体授予或拒绝对某个安全对象的特定权限,该用户将继承授予该对象的 public 角色的权限。 只有在希望所有用户都能使用对象时,才在对象上分配 Public 权限。 你无法更改具有 Public 角色的成员身份。

注意:public 与其他角色的实现方式不同,可通过 public 固定服务器角色授予、拒绝或撤销权限 。

重要

以下服务器角色提供的大多数权限都不适用于 Synapse SQL:processadmin、serveradmin、setupadmin和 diskadmin 。

固定服务器角色的权限

每个固定服务器角色都被分配了特定的权限。 下图显示了分配给服务器角色的权限。

152caee70a28f7eb53a62086bfda6c0a.png

重要

CONTROL SERVER 权限与 sysadmin 固定服务器角色类似,但并不完全相同。 权限并不表示角色成员身份,并且角色成员身份不会授予权限。 (例如, CONTROL SERVER 不表示 sysadmin 固定服务器角色的成员身份。)但是,有时可在角色和相等的权限之间模拟。 大多数 DBCC 命令和许多系统过程要求 sysadmin 固定服务器角色的成员身份。 对于需要 sysadmin 成员资格的 171 个系统存储过程的列表,请参阅 Andreas Wolter 的以下博客帖子: CONTROL SERVER vs. sysadmin/sa: permissions, system procedures, DBCC, automatic schema creation and privilege escalation - caveats(CONTROL SERVER 与 sysadmin/sa:权限、系统过程、DBCC、自动创建架构和特权升级 - 注意事项)。

服务器级权限

只能向用户定义的服务器角色中添加服务器级权限。 若要列出服务器级权限,请执行下面的语句。 服务器级权限如下:

SELECT * FROM sys.fn_builtin_permissions('SERVER') ORDER BY permission_name;

使用服务器级角色

下表介绍了可以用于服务器级角色的命令、视图和功能。

另请参阅

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值