文档章节

SQL Server角色成员身份和权限简介

MLeo
 MLeo
发布于 2013/06/27 09:42
字数 1340
阅读 170
收藏 6

为便于管理数据库中的权限,SQL Server 提供了若干“角色”,这些角色是用于分组其他主体的安全主体。它们类似于
Microsoft Windows
操作系统中的组。数据库级角色的权限作用域为数据库范围。SQL Server
中有两种类型的数据库级角色:数据库中预定义的“固定数据库角色”和您可以创建的“灵活数据库角色”。

固定数据库角色是在数据库级别定义的,并且存在于每个数据库中。db_owner 和 db_securityadmin 数据库角色的成员可以管理固定数据库角色成员身份。但是,只有
db_owner 数据库角色的成员能够向db_owner 固定数据库角色中添加成员。msdb
数据库中还有一些特殊用途的固定数据库角色。您可以向数据库级角色中添加任何数据库帐户和其他SQL Server
角色。固定数据库角色的每个成员都可向同一个角色添加其他登录名。

数据库级别的角色名称及说明

db_owner 固定数据库角色的成员可以执行数据库的所有配置和维护活动,还可以删除数据库。

db_securityadmin 固定数据库角色的成员可以修改角色成员身份和管理权限。向此角色中添加主体可能会导致意外的权限升级。

db_accessadmin 固定数据库角色的成员可以为 Windows 登录名、Windows 组和 SQL Server
登录名添加或删除数据库访问权限。

db_backupoperator 固定数据库角色的成员可以备份数据库。

db_ddladmin 固定数据库角色的成员可以在数据库中运行任何数据定义语言 (DDL) 命令。

db_datawriter 固定数据库角色的成员可以在所有用户表中添加、删除或更改数据。

db_datareader 固定数据库角色的成员可以从所有用户表中读取所有数据。

db_denydatawriter 固定数据库角色的成员不能添加、修改或删除数据库内用户表中的任何数据。

db_denydatareader 固定数据库角色的成员不能读取数据库内用户表中的任何数据。

有关数据库级固定角色权限的特定信息,请参阅固定数据库角色的权限(数据库引擎)。

msdb 角色名称及说明

db_ssisadmin

db_ssisoperator 

db_ssisltduser 

这些数据库角色的成员可以管理和使用SSIS。从早期版本升级的 SQL Server 实例可能包含使用 Data
Transformation Services (DTS)(而不是 SSIS)命名的旧版本角色。有关详细信息,请参阅使用 Integration Services 角色。

dc_admin

dc_operator

dc_proxy

这些数据库角色的成员可以管理和使用数据收集器。有关详细信息,请参阅数据收集器的安全性。

PolicyAdministratorRole

db_ PolicyAdministratorRole 
数据库角色的成员可以对基于策略的管理策略和条件执行所有配置和维护活动。有关详细信息,请参阅使用基于策略的管理来管理服务器。

ServerGroupAdministratorRole

ServerGroupReaderRole

这些数据库角色的成员可以管理和使用注册的服务器组。有关详细信息,请参阅创建服务器组。

重要提示:

db_ssisadmin 角色和 dc_admin
角色的成员也许可以将其权限提升到sysadmin。之所以会发生此权限提升,是因为这些角色可以修改Integration Services 包,而 SQL
Server 可以使用SQL Server 代理的sysadmin 安全上下文来执行Integration Services
包。若要防止在运行维护计划、数据收集组和其他 Integration Services 包时出现此权限提升,请将运行包的 SQL Server
代理作业配置为使用拥有有限权限的代理帐户,或只将 sysadmin 成员添加到 db_ssisadmin 和dc_admin 角色。

使用服务器级角色

sp_helpdbfixedrole (Transact-SQL)   →  元数据   →  返回固定数据库角色的列表。

sp_dbfixedrolepermission (Transact-SQL)   →  元数据   →  显示固定数据库角色的权限。

sp_helprole (Transact-SQL)   →  元数据   →  返回当前数据库中有关角色的信息。

sp_helprolemember (Transact-SQL)   →  元数据   →  返回有关当前数据库中某个角色的成员的信息。

sys.database_role_members (Transact-SQL)   →  元数据   →  为每个数据库角色的每个成员返回一行。

IS_MEMBER (Transact-SQL)   →  元数据   →  指示当前用户是否为指定 Microsoft Windows 组或
Microsoft SQL Server 数据库角色的成员。

CREATE ROLE (Transact-SQL)   →  命令   →  在当前数据库中创建新的数据库角色。

ALTER ROLE (Transact-SQL)   →  命令   →  更改数据库角色的名称。

DROP ROLE (Transact-SQL)    →  命令从数据库中删除角色。

sp_addrole (Transact-SQL)   →  命令   →  在当前数据库中创建新的数据库角色。

sp_droprole (Transact-SQL)   →  命令   →  从当前数据库中删除数据库角色。

sp_addrolemember (Transact-SQL)   →  命令   → 
为当前数据库中的数据库角色添加数据库用户、数据库角色、Windows 登录名或 Windows 组。

sp_droprolemember (Transact-SQL)   →  命令   →  从当前数据库的 SQL Server
角色中删除安全帐户。

public 数据库角色

每个数据库用户都属于public 数据库角色。如果未向某个用户授予或拒绝对安全对象的特定权限时,该用户将继承授予该对象的public 角色的权限。

本文转载自:

MLeo
粉丝 9
博文 46
码字总数 6067
作品 0
闵行
程序员
私信 提问
SQL Server中的角色(服务器级别和数据库级别角色)

参考文献 http://msdn.microsoft.com/zh-cn/library/ms188659.aspx 服务器级别角色 为帮助您管理服务器上的权限,SQL Server 提供了若干角色。这些角色是用于对其他主体进行分组的安全主体。...

嗯哼9925
2017/12/14
0
0
SQL Server 2008 权限管理

一、服务器的九大角色 二、数据库角色(固定数据库角色)(用户不能增加、修改和删除固定数据库角色) 三、对固定数据库角色进行相应的操作的系统存储过程和命令

xsh2009
2014/03/15
0
0
SQL Server权限设置

随着网络的不但发展、黑客技术的日益增长,针对于SQL Server数据库的攻击也越来越多,很多企业的机密数据受到一定的威胁。如何多方便的加强SQL Server的安全性呢? 一、SQL Server的安全机制...

杨书凡
2017/12/03
0
0
SQLserver运维必备:权限管理、备份、复制

小生博客:http://xsboke.blog.51cto.com 小生 Q Q:1770058260 -------谢谢您的参考,如有疑问,欢迎交流 一、权限简介 二、备份简介 三、复制简介 四、案例 。。。。。。。。。。。。。 一...

小生博客
2017/06/23
0
0
SQL Server 登录名、服务器角色、用户名和数据库角色 --- 解释

一、基本解释 登录名:登录服务器的用户账号; 服务器角色:登录名对该服务器具有的权限,角色分多种的,一个角色可以有多个登录名,如操作系统的系统用户可以有多个。 SQL服务器角色 sysadm...

Code辉
2018/11/27
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Chrome OS 更新新版本可让Linux访问USB连接的Android设备

谷歌再次为Chrome OS带来了重大版本更新,使版本号达到了75。本次更新的一大亮点就是允许在Chrome OS上运行的Linux能够识别通过USB方式连接的Android设备,能够让用户使用Linux进行调试等等。...

linuxCool
昨天
10
0
聊聊feign的HystrixInvocationHandler

序 本文主要研究一下feign的HystrixInvocationHandler HystrixInvocationHandler feign-hystrix-10.2.3-sources.jar!/feign/hystrix/HystrixInvocationHandler.java final class HystrixInvo......

go4it
昨天
14
0
WPS 开启宏功能

前言 最近安装了个人版的WPS2019,使用Excel的宏功能时候发现不能使用了,网上下载了几个安装包都是比较旧的,不能使用。 找了个VB7.1的安装包,安装完了,重启WPS宏功能就可以使用了。 安装...

sharelocked
昨天
2
0
ZStack实践汇 | 高效开发测试打造产品化私有云

作者:许佳珺 前言 随着越来越多的企业将云计算产品应用到基础设施及其核心业务中,如何提高和保证软件交付质量、减少软件开发迭代周期、加速软件发布频率成为所有云厂商面临的关键问题。 根...

ZStack社区版
昨天
3
0
IPv4如何转换为IPv6?

导读 ipv6已经逐渐在应用,现在已经有很多的运营商支持ipv6,前天我们也发布了如何让电脑使用ipv6地址?有很多朋友在问?ipv6有什么作用,它的表示方式是什么,今天我们来一起来详细了解下ipv...

问题终结者
昨天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部