当前位置:首页 » 数据仓库 » 数据库固定的角色
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

数据库固定的角色

发布时间: 2023-03-16 00:53:01

数据库角色成员身份 哪个是管理员权限

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

㈡ sql 数据库中syadmin固定服务器怎么添加角色

数据库角色的成员可以分为如下几类:

Windows用户组或用户账户

SQL Server登录

其他角色

SQL Server的安全体系结构中包括了几个含有特定隐含权限的角色。除了数据库拥有者创建的角色之外,还有两类预定义的角色。这些可以创建的角色可以分为如下几类:

固定服务器

固定数据库

用户自定义

固定服务器

由于固定服务器是在服务器层次上定义的,因此它们位于从属于数据库服务器的数据库外面。下表列出了所有现有的固定服务器角色。

固定服务器角色

说 明

sysadmin

执行SQL Server中的任何动作

serveradmin

配置服务器设置

setupadmin

安装复制和管理扩展过程

securityadmin

管理登录和CREATE DATABASE的权限以及阅读审计

processadmin

管理SQL Server进程

dbcreator

创建和修改数据库

diskadmin

管理磁盘文件

下面两个系统过程用来添加或删除固定服务器角色成员:

sp_addsrvrolemember

sp_dropsrvrolemember

注意:您不能添加、修改或删除固定服务器角色。另外,只有固定服务器角色的成员才能执行上述两个系统过程来从角色中添加或删除登录账户。

sa登录

sa登录是系统管理员的登录。在以前的SQL Server版本中不存在角色,sa登录具有所有可能的关于系统管理工作的权限。在SQL Server 2005中,sa登录保持了向后兼容性。sa登录永远是固定服务器角色syadmin中的成员,并且不能从该角色中删除。

注意:只有当没有其他方法登录到SQL Server系统中时,再使用sa登录。

固定服务器角色及其权限

在某个SQL Server系统中,每个固定服务器角色都有其隐含的权限。使用系统过程sp_srvrolepermission可以浏览每个固定服务器角色的权限。该系统过程的语法形式为:

sp_srvrolepermission[[@srvrolename =] 'role']

如果没有指定role的值,那么所有的固定服务器角色的权限都将显示出来。下面的部分将讨论每个固定服务器角色的权限。

1. sysadmin

固定服务器角色sysadmin的成员被赋予了SQL Server系统中所有可能的权限。例如,只有这个角色中的成员(或一个被这个角色中的成员赋予了CREATE DATABASE权限的用户)才能够创建数据库。

固定服务器角色和sa登录之间有着特殊的关系。sa登录一直都是固定服务器角色中的成员,并且不能从该角色中删除。

2. serveradmin

固定服务器角色serveradmin的成员可以执行如下的动作:

向该服务器角色中添加其他登录

运行dbcc pintable命令(从而使表常驻于主内存中)

运行系统过程sp_configure(以显示或更改系统选项)

运行reconfigure选项(以更新系统过程sp_configure所做的所有改动)

使用shutdown命令关掉数据库服务器

运行系统过程sp_tableoption为用户自定义表设置选项的值

3. setupadmin

固定服务器角色setupadmin中的成员可以执行如下的动作:

向该服务器角色中添加其他登录

添加、删除或配置链接的服务器

执行一些系统过程,如sp_serveroption

4. securityadmin

固定服务器角色securitypadmin中的成员可以执行关于服务器访问和安全的所有动作。这些成员可以进行如下的系统动作:

向该服务器角色中添加其他登录

读取SQL Server的错误日志

运行如下的系统过程:如sp_addlinkedsrvlogin、sp_addlogin、sp_defaultdb、sp_defaultlanguage、sp_denylogin、sp_droplinkedsrvlogin、sp_droplogin、sp_grantlogin、sp_helplogins、sp_remoteoption和sp_revokelogin(所有这些系统过程都与系统安全相关。)

5. processadmin

固定服务器角色processadmin中的成员用来管理SQL Server进程,如中止用户正在运行的查询。这些成员可以进行如下的动作:

向该服务器角色中添加其他登录

执行KILL命令(以取消用户进程)

6. dbcreator

固定服务器角色dbcreator中的成员用来管理与数据库创建和修改有关的所有动作。这些成员可以进行如下的动作:

向该服务器角色中添加其他登录

运行CREATE DATABASE和ALTER DATABASE语句

使用系统过程sp_renamedb来修改数据库的名称

7. diskadmin

固定服务器角色diskadmin的成员可以进行如下与用来存储数据库对象的文件和文件组有关的动作:

向该服务器角色中添加其他登录

运行如下系统过程:sp_dmpdevice和sp_dropdevice。

运行DISK INIT语句

固定数据库角色

固定数据库角色在数据库层上进行定义,因此它们存在于属于数据库服务器的每个数据库中。下表列出了所有的固定数据库角色。

固定数据库角色

说 明

db_owner

可以执行数据库中技术所有动作的用户

db_accessadmin

可以添加、删除用户的用户

db_datareader

可以查看所有数据库中用户表内数据的用户

db_datawriter

可以添加、修改或删除所有数据库中用户表内数据的用户

db_ddladmin

可以在数据库中执行所有DDL操作的用户

db_securityadmin

可以管理数据库中与安全权限有关所有动作的用户

db_backoperator

可以备份数据库的用户(并可以发布DBCC和CHECKPOINT语句,这两个语句一般在备份前都会被执行)

db_denydatareader

不能看到数据库中任何数据的用户

db_denydatawriter

不能改变数据库中任何数据的用户

除了上表中列出的固定数据库角色之外,还有一种特殊的固定数据库角色,名为public,这里将首先介绍这一角色。

public角色

public角色是一种特殊的固定数据库角色,数据库的每个合法用户都属于该角色。它为数据库中的用户提供了所有默认权限。这样就提供了一种机制,即给予那些没有适当权限的所有用户以一定的(通常是有限的)权限。public角色为数据库中的所有用户都保留了默认的权限,因此是不能被删除的。

一般情况下,public角色允许用户进行如下的操作:

使用某些系统过程查看并显示master数据库中的信息

执行一些不需要一些权限的语句(例如PRINT)

固定数据库角色及其权限

在数据库中,每个固定数据库角色都有其特定的权限。这就意味着对于某个数据库来说,固定数据库角色的成员的权限是有限的。使用系统过程sp_dbfixedrolepermission就可以查看每个固定数据库角色的权限。该系统过程的语法为:

sp_db.xedrolepermission [[@rolename =] 'role']

如果没有指定role的值,那么所有固定数据库角色的权限都可以显示出来。下面的几节将讨论每个固定数据库角色的权限。

1. db_owner

固定数据库角色db_owner的成员可以在特定的数据库中进行如下的动作:

向其他固定数据库角色中添加成员,或从其中删除成员

运行所有的DDL语句

运行BACKUP DATABASE和BACKUP LOG语句

使用CHECKPOINT语句显式地启动检查点进程

运行下列dbcc命令:dbcc checkalloc、dbcc checkcatalog、dbcc checkdb、dbcc updateusage

授予、取消或剥夺每一个数据库对象上的下列权限:SELECT、INSERT、UPDATE、DELETE和REFERENCES

使用下列系统过程向数据库中添加用户或角色:sp_addapprole、sp_addrole、sp_addrolemember、sp_approlepassword、sp_changeobjectowner、sp_dropapprole、sp_droprole、sp_droprolemember、sp_dropuser、sp_grantdbaccess

使用系统过程sp_rename为任何数据库对象重新命名

2. db_accessadmin

固定数据库角色db_accessadmin的成员可以执行与数据库访问有关的所有动作。这些角色可以在具体的数据库中执行下列操作:

运行下列系统过程:sp_addalias、sp_dropalias、sp_dropuser、sp_grantdbacess、sp_revokedbaccess

为Windows用户账户、Windows组和SQL Server登录添加或删除访问

3. dbdatareader

固定数据库角色dbdatareader的成员对数据库中的数据库对象(表或视图)具有SELECT权限。然而,这些成员不能把这个权限授予其他任何用户或角色。(这个限制对REVOKE语句来说同样成立。)

4. dbdatawriter

固定数据库角色dbdatawriter的成员对数据库中的数据库对象(表或视图)具有INSERT、UPDATE和DELETE权限。然而,这些成员不能把这个权限授予其他任何用户或角色。(这个限制对REVOKE语句来说也同样成立。)

5. db_ddladmin

固定数据库角色db_ddladmin的成员可以进行如下的动作:

运行所有DDL语句

对任何表上授予REFERENCESE权限

使用系统过程sp_procoption和sp_recompile来修改任何存储过程的结构

使用系统过程sp_rename为任何数据库对象重命名

使用系统过程sp_tableoption和sp_changeobjectowner分别修改表的选项和任何数据库对象的拥有者

6. db_securityadmin

固定数据库角色db_securityadmin的成员可以管理数据库中的安全。这些成员可以进行如下的动作:

运行与安全有关的所有Transact-SQL语句(GRANT、DENY和REVOKE)

运行以下系统过程:sp_addapprole、sp_addrole、sp_addrolemember、sp_approlepassword、sp_changeobjectowner、sp_dropapprole、sp_droprole、sp_droprolemember

7. db_backupoperator

固定数据库角色db_backupoperator的成员可以管理数据库备份的过程。这些成员可以进行如下动作:

运行BACKUP DATABASE和BACKUP LOG语句

用CHECKPOINT语句显式地启动检查点进程

运行如下dbcc命令:dbcc checkalloc、dbcc checkcatalog、dbcc checkdb、dbcc updateusage

8. db_denydatareader和db_denydatawriter

顾名思义,固定数据库角色db_denydatareader的成员对数据库中的数据库对象(表或视图)没有SELECT权限。如果数据库中含有敏感数据并且其他用户不能读取这些数据,那么就可以使用这个角色。

固定数据库角色db_denydatawriter的成员对数据库中的任何数据库对象(表或视图)没有INSERT、UPDATE和DELETE权限。

㈢ 固定服务器角色、固定数据库角色各有哪几类有什么权限

固定服务器角色 服务器级权限 db_accessadmin 已授予:ALTER ANY USER、CREATE SCHEMAdb_accessadmin 已使用 GRANT 选项授予:CONNECTdb_backupoperator 已授予:BACKUP DATABASE、BACKUP LOG、CHECKPOINT已授予:VIEW ANY DATABASEdb_datareader 已授予:SELECT 已授予:VIEW ANY DATABASEdb_datawriter 已授予:DELETE、INSERT、UPDATE已授予:VIEW ANY DATABASEdb_ddladmin 已授予:ALTER ANY ASSEMBLY、ALTER ANY ASYMMETRIC KEY、ALTER ANY CERTIFICATE、ALTER ANY CONTRACT、ALTER ANY DATABASE DDL TRIGGER、ALTER ANY DATABASE EVENT、NOTIFICATION、ALTER ANY DATASPACE、ALTER ANY FULLTEXT CATALOG、ALTER ANY MESSAGE TYPE、ALTER ANY REMOTE SERVICE BINDING、ALTER ANY ROUTE、ALTER ANY SCHEMA、ALTER ANY SERVICE、ALTER ANY SYMMETRIC KEY、CHECKPOINT、CREATE AGGREGATE、CREATE DEFAULT、CREATE FUNCTION、CREATE PROCEDURE、CREATE QUEUE、CREATE RULE、CREATE SYNONYM、CREATE TABLE、CREATE TYPE、CREATE VIEW、CREATE XML SCHEMA COLLECTION、REFERENCES 已授予:VIEW ANY DATABASEdb_denydatareader 已拒绝:SELECT 已授予:VIEW ANY DATABASEdb_denydatawriter 已拒绝:DELETE、INSERT、UPDATEdb_owner 已使用 GRANT 选项授予:CONTROL 已授予:VIEW ANY DATABASEdb_securityadmin 已授予:ALTER ANY APPLICATION ROLE、ALTER ANY ROLE、CREATE SCHEMA、VIEW DEFINITION 已授予:VIEW ANY DATABASEdbm_monitor 已授予:VIEW 数据库镜像监视器中的最新状态固定服务器角色的权限bulkadmin 已授予:ADMINISTER BULK OPERATIONS dbcreator 已授予:CREATE DATABASE diskadmin 已授予:ALTER RESOURCES processadmin 已授予:ALTER ANY CONNECTION、租睁ALTER SERVER STATE securityadmin 已授予李举:ALTER ANY LOGIN serveradmin 已授予:ALTER ANY ENDPOINT、ALTER RESOURCES、ALTER SERVER STATE、ALTER SETTINGS、哪型碧SHUTDOWN、VIEW SERVER STATE setupadmin 已授予:ALTER ANY LINKED SERVER sysadmin 已使用 GRANT 选项授予:CONTROL SERVER 详情请参考: http://msdn.microsoft.com/zh-cn/library/ms175892.aspx http://msdn.microsoft.com/zh-cn/library/ms175892.aspx

㈣ 数据库固定的8个服务器角色各有什么权限

8的等级最高,相当于sqlserver的sa账户和oracle的sysadmin,可以做一切操作,包括以下七种角色,事实上一般以下七种角色的权限都是他来指派的,企业中一般严禁这个账户登陆的,因为一旦误操作将会造成灾难性损失。
1管理数据库大小,数据空间大小以及数据日志大小等
2拥有建立数据库的权限
3对已经分配磁盘空间进行分配
4可以管理进程,比如剔除一些非法进程
5可以管理连接权限,用户权限等。
6这个可顷世以启李乎谈动服务器,对服务器的属性进行分配(连接池、cpu、内存空间等),貌似是sqlserver特有
7这个角色很多数据库是没有的,比如sqlserver2000就是没有的,oracle8以前好像也是没有的,可以安装数据库以及删除数据库(在非常安全控制地方这种账户是没有连接权限的,也就是说只能安装,但是不能读取里面的数据)

这些权限各不相同,所以很难说是对服务器哪碰的还是数据库的,比如7这种,根本说不上是不是服务器级别的,因为它只有安装权限,可以认为是系统级别的,事实上,只有sqlserver存在服务器和数据库的区别,一般的诸如db2和oracle中的所谓服务器指的是那台机器而不是一个sqlserver意义上的服务器,具体情况具体对待

其实主要角色不止这些,还有诸如备份管理员backupadmin,数据清理员英文忘记了等等。

㈤ sql server2005里什么叫角色分哪两种

分为:服务器级别角色和数据库级别的角色 服务器级别角色 固定服务器角色在其作用域内属于服务器范围。固定服务器角色的每个成员都可以向其所属角色添加其他登录名。 固定服务器角色有: bulkadmin dbcreator diskadmin processadmin securityadmin serveradmin setupadmin sysadmin 数据库级别的角色 固定数据库角色是在数据库级别定义的,并且存在于每个数据库中。 db_owner 和 db_securityadmin 数据库角色的成员可以管理固定数据库角色成员身份;但是,只有 db_owner 数据库的成员可以向 db_owner 固定数据库角色中添加成员。 固定数据库角色包括: db_accessadmin db_backupoperator db_datareader db_datawriter db_ddladmin db_denydatareader db_denydatawriter db_owner db_securityadmin public 数据库角色 每个数据库用户都属于 public 数据库角色。当尚未对某个用户授予或拒绝对安全对象的特定权限时,则该用户将继承授予该安全对象的 public 角色的权限。

㈥ 什么是固定数据库角色都有哪几种

下尘首面这是8个服务器旅正角色:派镇数bulkadmin dbcreator diskadmin processadmin securityadmin serveradmin setupadmin sysadmin

㈦ 数据库角色的固定数据库角色

db_owner 在数据库中有全部权限。
db_accessadmin 可以添加银乎或删除用户 ID。
db_securityadmin 可以管理全部权限、对象所有权、角色和角色成员资格。
db_ddladmin 可以发出 ALL DDL,但不能发出 GRANT、REVOKE 或 DENY 语句。握搏碰
db_backupoperator 可以发出 DBCC、CHECKPOINT 和 BACKUP 语句。
db_datareader 可以选择数据库内任何用户表中的所有数据。
db_datawriter 可以更改数据库内任何用户表中的所有数据。
db_denydatareader 不能选择数据库内任何段谈用户表中的任何数据。
db_denydatawriter 不能更改数据库内任何用户表中的任何数据。

㈧ 什么是数据库角色

角色是一个强大的工具,使您得以将用户集中到一个单元中,然后对该单元应用权限。对一个角色授予、拒绝或废除的权限也适用于该角色的任何成员。可以建立一个角色来代表单位中一类工作人员所执行的工作,然后给这个角色授予适当的权限。当工作人员开始工作时,只须将他们添加为该角色成员,当他们离开工作时,将他们从该角色中删除。而不必在每个人接受或离开工作时,反复授予、拒绝和废除其权限。权限在用户成为角色成员时自动生效。

Microsoft® Windows NT® 和 Windows® 2000 组的使用方式与角色很相似。有关更多信息,请参见组。

如果根据工作职能定义了一系列角色,并给每个角色指派了适合这项工作的权限,则很容易在数据库中管理这些权限。之后,不用管理各个用户的权限,而只须在角色之间移动用户即可。如果工作职能发生改变,则只须更改一次角色的权限,并使更改自动应用于角色的所有成员,操作比较容易。

在 Microsoft® SQL Server™ 2000 和 SQL Server 7.0 版中,用户可属于多个角色。

以下脚本说明登录、用户和角色的添加,并为角色授予权限。

USE master

GO

sp_grantlogin 'NETDOMAIN\John'

GO

sp_defaultdb 'NETDOMAIN\John', 'courses'

GO

sp_grantlogin 'NETDOMAIN\Sarah'

GO

sp_defaultdb 'NETDOMAIN\Sarah', 'courses'

GO

sp_grantlogin 'NETDOMAIN\Betty'

GO

sp_defaultdb 'NETDOMAIN\Betty', 'courses'

GO

sp_grantlogin 'NETDOMAIN\Ralph'

GO

sp_defaultdb 'NETDOMAIN\Ralph', 'courses'

GO

sp_grantlogin 'NETDOMAIN\Diane'

GO

sp_defaultdb 'NETDOMAIN\Diane', 'courses'

GO

USE courses

GO

sp_grantdbaccess 'NETDOMAIN\John'

GO

sp_grantdbaccess 'NETDOMAIN\Sarah'

GO

sp_grantdbaccess 'NETDOMAIN\Betty'

GO

sp_grantdbaccess 'NETDOMAIN\Ralph'

GO

sp_grantdbaccess 'NETDOMAIN\Diane'

GO

sp_addrole 'Professor'

GO

sp_addrole 'Student'

GO

sp_addrolemember 'Professor', 'NETDOMAIN\John'

GO

sp_addrolemember 'Professor', 'NETDOMAIN\Sarah'

GO

sp_addrolemember 'Professor', 'NETDOMAIN\Diane'

GO

sp_addrolemember 'Student', 'NETDOMAIN\Betty'

GO

sp_addrolemember 'Student', 'NETDOMAIN\Ralph'

GO

sp_addrolemember 'Student', 'NETDOMAIN\Diane'

GO

GRANT SELECT ON StudentGradeView TO Student

GO

GRANT SELECT, UPDATE ON ProfessorGradeView TO Professor

GO

该脚本给 John 和 Sarah 教授提供了更新学生成绩的权限,而学生 Betty 和 Ralph 只能选择他们自己的成绩。Diane 因同时教两个班,所以添加到两个角色中。ProfessorGradeView 视图应将教授限制在自己班学生的行上,而 StudentGradeView 应限制学生只能选择自己的成绩。

SQL Server 2000 和 SQL Server 7.0 版在安装过程中定义几个固定角色。可以在这些角色中添加用户以获得相关的管理权限。下面是服务器范围内的角色。

固定服务器角色
描述

sysadmin
可以在 SQL Server 中执行任何活动。

serveradmin
可以设置服务器范围的配置选项,关闭服务器。

setupadmin
可以管理链接服务器和启动过程。

securityadmin
可以管理登录和 CREATE DATABASE 权限,还可以读取错误日志和更改密码。

processadmin
可以管理在 SQL Server 中运行的进程。

dbcreator
可以创建、更改和除去数据库。

diskadmin
可以管理磁盘文件。

bulkadmin
可以执行 BULK INSERT 语句。

可以从 sp_helpsrvrole 获得固定服务器角色的列表,可以从 sp_srvrolepermission 获得每个角色的特定权限。

每个数据库都有一系列固定数据库角色。虽然每个数据库中都存在名称相同的角色,但各个角色的作用域只是在特定的数据库内。例如,如果 Database1 和 Database2 中都有叫 UserX 的用户 ID,将 Database1 中的 UserX 添加到 Database1 的 db_owner 固定数据库角色中,对 Database2 中的 UserX 是否是 Database2 的 db_owner 角色成员没有任何影响。

固定数据库角色
描述

db_owner
在数据库中有全部权限。

db_accessadmin
可以添加或删除用户 ID。

db_securityadmin
可以管理全部权限、对象所有权、角色和角色成员资格。

db_ddladmin
可以发出 ALL DDL,但不能发出 GRANT、REVOKE 或 DENY 语句。

db_backupoperator
可以发出 DBCC、CHECKPOINT 和 BACKUP 语句。

db_datareader
可以选择数据库内任何用户表中的所有数据。

db_datawriter
可以更改数据库内任何用户表中的所有数据。

db_denydatareader
不能选择数据库内任何用户表中的任何数据。

db_denydatawriter
不能更改数据库内任何用户表中的任何数据。

可以从 sp_helpdbfixedrole 获得固定数据库角色的列表,可以从 sp_dbfixedrolepermission 获得每个角色的特定权限。

数据库中的每个用户都属于 public 数据库角色。如果想让数据库中的每个用户都能有某个特定的权限,则将该权限指派给 public 角色。如果没有给用户专门授予对某个对象的权限,他们就使用指派给 public 角色的权限。

㈨ 简答SQL固定数据库角色类型及其功能。

权限角色,是争对用户说的,我们新建用户的时候,往往是新建一类人,然后给这个用户这一类人的角色,这样易与管理,否则,用户多了,每个人权限又都不同,
在sql中不同的角色,其权限,操作的对象,都不同,小应用系统用的不多,大一点的公司,特别是用到的《域》的时候,数据库工作要多人分工的时候,就用到了,有负责备份,有负表开发的,等等。

㈩ 数据库角色的简介

在数据库中,为便于对用户及权限进行管理,可以将一组具有相同权限的用户组织在一起,这一组具有相同权限的用户就称为角色(Role)。角色类似于Windows操作系统安全体系中的组的概念。在实际工作中,有大量的用户其权限是一样的,如果让数据库管理员在每次创建完用户后都对每个用户分别授权,则是一件非常麻烦的事情。但如果把具有相同权限的用户集中在角色中进行管理,则会方便很多。
为一个角色进行权限管理就相当于对该角色中的所有成员进行操作。可以为有相同权限的一类用户建立一个角色,然后为角色授予合适的权限。使用角色的好处是系统管理员只需对权限的种类进行划分,然后将不同的权限授予不同的角色,而不必关心有哪些具体的用户。而且当角色中的成员发生变化时,比如添加成员或删除成员,系统管理员都无需做任何关于权限的操作。
在SOL Server 2008中,角色分为预定义的系统角色和用户定义角色两种。同对,根据角色作用范围的不同,系统角色又分为服务器级角色(称为固定服务器角色)和数据库级角色(称为固定数据库角色)。用户定义的角色均是数据库级角色。