189 8069 5689

sqlserver中角色,sql server角色包含的角色有

sql server里 服务器角色都是什么意思?

各个角色是对应不同权限的,sql server中有很多权限,可以把这些权限组合或单独赋给各个角色,从而使不同角色的用户的权限不同,你列出的都是内置角色。你看看下面这些对你有没有帮助,希望你解决你的问题。

创新互联公司专业为企业提供峨边彝族网站建设、峨边彝族做网站、峨边彝族网站设计、峨边彝族网站制作等企业网站建设、网页设计与制作、峨边彝族企业网站模板建站服务,十载峨边彝族做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

为便于管理数据库中的权限,SQL Server 提供了若干“角色”,这些角色是用于分组其他主体的安全主体。它们类似于 Microsoft Windows 操作系统中的组。数据库级角色的权限作用域为数据库范围。

SQL Server 中有两种类型的数据库级角色:数据库中预定义的“固定数据库角色”和您可以创建的“灵活数据库角色”。

固定数据库角色是在数据库级别定义的,并且存在于每个数据库中。db_owner 和 db_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 角色。

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 角色的权限。

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 角色的权限。

什么是角色,SQL Server有哪些角色种类?

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

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

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

在 Microsoft�0�3 SQL Server�6�4 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 角色的权限。


当前名称:sqlserver中角色,sql server角色包含的角色有
分享URL:http://cdxtjz.com/article/hojodd.html

其他资讯