设为首页 收藏本站
查看: 1246|回复: 0

[经验分享] SQL Server中的角色(服务器级别和数据库级别角色)

[复制链接]

尚未签到

发表于 2015-6-30 16:55:36 | 显示全部楼层 |阅读模式
参考文献

http://msdn.microsoft.com/zh-cn/library/ms188659.aspx服务器级别角色



  为帮助您管理服务器上的权限,SQL Server 提供了若干角色。这些角色是用于对其他主体进行分组的安全主体。 服务器级角色的权限作用域为服务器范围。 (“角色”类似于 Windows 操作系统中的“组”。)
  提供固定服务器角色是为了方便使用和向后兼容。 应尽可能分配更具体的权限。
  SQL Server 提供了九种固定服务器角色。 无法更改授予固定服务器角色的权限。 从 SQL Server 2012 开始,您可以创建用户定义的服务器角色,并将服务器级权限添加到用户定义的服务器角色。
  您可以将服务器级主体(SQL Server 登录名、Windows 帐户和 Windows 组)添加到服务器级角色。 固定服务器角色的每个成员都可以将其他登录名添加到该同一角色。 用户定义的服务器角色的成员则无法将其他服务器主体添加到角色。


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


  服务器级的固定角色
  说明
  sysadmin
  sysadmin 固定服务器角色的成员可以在服务器中执行任何活动。
  serveradmin
  serveradmin 固定服务器角色的成员可以更改服务器范围内的配置选项并关闭服务器。
  securityadmin
  securityadmin 固定服务器角色的成员管理登录名及其属性。 他们可以 GRANT、DENY 和 REVOKE 服务器级权限。 他们还可以 GRANT、DENY 和 REVOKE 数据库级权限(如果他们具有数据库的访问权限)。 此外,他们还可以重置 SQL Server 登录名的密码。

DSC0000.gif 安全说明  能够授予数据库引擎的访问权限和配置用户权限的能力使得安全管理员可以分配大多数服务器权限。 securityadmin 角色应视为与sysadmin 角色等效。
  processadmin
  processadmin 固定服务器角色的成员可以终止在 SQL Server 实例中运行的进程。
  setupadmin
  setupadmin 固定服务器角色的成员可以添加和删除链接服务器。
  bulkadmin
  bulkadmin 固定服务器角色的成员可以运行 BULK INSERT 语句。
  diskadmin
  diskadmin 固定服务器角色用于管理磁盘文件。
  dbcreator
  dbcreator 固定服务器角色的成员可以创建、更改、删除和还原任何数据库。
  public
  每个 SQL Server 登录名均属于 public 服务器角色。 如果未向某个服务器主体授予或拒绝对某个安全对象的特定权限,该用户将继承授予该对象的 public 角色的权限。当您希望该对象对所有用户可用时,只需对任何对象分配 public 权限即可。 您无法更改 public 中的成员关系。

DSC0001.gif 注意  public 的实现方式与其他角色不同。 但是,可以从 public 授予、拒绝或撤销权限。


数据库级别的角色




  为便于管理数据库中的权限,SQL Server 提供了若干“角色”,这些角色是用于对其他主体进行分组的安全主体。 它们类似于 Microsoft Windows 操作系统中的。 数据库级角色的权限作用域为数据库范围。
  SQL Server 中有两种类型的数据库级角色:数据库中预定义的“固定数据库角色”和您可以创建的“灵活数据库角色”。
  固定数据库角色是在数据库级别定义的,并且存在于每个数据库中。 db_ownerdb_securityadmin 数据库角色的成员可以管理固定数据库角色成员身份。 但是,只有db_owner 数据库角色的成员能够向 db_owner 固定数据库角色中添加成员。 msdb 数据库中还有一些特殊用途的固定数据库角色。
  您可以向数据库级角色中添加任何数据库帐户和其他 SQL Server 角色。 固定数据库角色的每个成员都可向同一个角色添加其他登录名。

重要提示  请不要将灵活数据库角色添加为固定角色的成员。 这会导致意外的权限升级。
  下表显示了固定数据库级角色及其能够执行的操作。 所有数据库中都有这些角色。


  数据库级别的角色名称
  说明
  db_owner
  db_owner 固定数据库角色的成员可以执行数据库的所有配置和维护活动,还可以删除数据库。
  db_securityadmin
  db_securityadmin 固定数据库角色的成员可以修改角色成员身份和管理权限。 向此角色中添加主体可能会导致意外的权限升级。
  db_accessadmin
  db_accessadmin 固定数据库角色的成员可以为 Windows 登录名、Windows 组和 SQL Server 登录名添加或删除数据库访问权限。
  db_backupoperator
  db_backupoperator 固定数据库角色的成员可以备份数据库。
  db_ddladmin
  db_ddladmin 固定数据库角色的成员可以在数据库中运行任何数据定义语言 (DDL) 命令。
  db_datawriter
  db_datawriter 固定数据库角色的成员可以在所有用户表中添加、删除或更改数据。
  db_datareader
  db_datareader 固定数据库角色的成员可以从所有用户表中读取所有数据。
  db_denydatawriter
  db_denydatawriter 固定数据库角色的成员不能添加、修改或删除数据库内用户表中的任何数据。
  db_denydatareader
  db_denydatareader 固定数据库角色的成员不能读取数据库内用户表中的任何数据。

msdb 角色

  msdb 数据库中包含下表显示的特殊用途的角色。


  msdb 角色名称
  说明
  db_ssisadmin
  db_ssisoperator
  db_ssisltduser
  这些数据库角色的成员可以管理和使用 SSIS。 从早期版本升级的 SQL Server 实例可能包含使用 Data Transformation Services (DTS)(而不是 SSIS)命名的旧版本角色。 有关详细信息,请参阅 Integration Services 角色(早期 SSIS 服务)。
  dc_admin
  dc_operator
  dc_proxy
  这些数据库角色的成员可以管理和使用数据收集器。 有关详细信息,请参阅数据收集。
  PolicyAdministratorRole
  db_ PolicyAdministratorRole 数据库角色的成员可以对基于策略的管理策略和条件执行所有配置和维护活动。 有关详细信息,请参阅使用基于策略的管理来管理服务器。
  ServerGroupAdministratorRole
  ServerGroupReaderRole
  这些数据库角色的成员可以管理和使用注册的服务器组。
  dbm_monitor
  在数据库镜像监视器中注册第一个数据库时在 msdb 数据库中创建。 在系统管理员为 dbm_monitor 角色分配用户之前,该角色没有任何成员。

重要提示  db_ssisadmin 角色和 dc_admin 角色的成员可以将其特权提升为 sysadmin。 由于这些角色可以修改 Integration Services 包,而 SQL Server 使用 SQL Server 代理的 sysadmin 安全上下文可以执行 Integration Services 包,因此可以实现特权提升。 若要防止在运行维护计划、数据收集组和其他 Integration Services 包时提升特权,请将运行包的 SQL Server 代理作业配置为具有有限特权的代理帐户,或仅将 sysadmin 成员添加到 db_ssisadmin 和 dc_admin 角色。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-82035-1-1.html 上篇帖子: SQL Server之连接 下篇帖子: SQL SERVER 2005如何建立自动备份的维护计划
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表