各个 角色 是对应不同 权限 的,sql server中有很多 权限 ,可以把这些 权限 组合或单独赋给各个 角色 ,从而使不同 角色 的用户的 权限 不同,你列出的都是内置 角色 。你看看下面这些对你有没有帮助,希望你解决你的问题。 为便于管理数据库中的 权限 ,SQ
各个 角色 是对应不同 权限 的,sql server中有很多 权限 ,可以把这些 权限 组合或单独赋给各个 角色 ,从而使不同 角色 的用户的 权限 不同,你列出的都是内置 角色 。你看看下面这些对你有没有帮助,希望你解决你的问题。
为便于管理数据库中的 权限 ,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 角色 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 角色 的 权限 。
来源:转载
版权声明:请尊重原作者的版权,转载请注明作者、出处。
本文链接地址:http://www.lao8.org/html/8/2009-7-19/2009719130148.html
本文来自: 老吧网(www.lao8.org) 详细出处参考:http://www.lao8.org/html/8/2009-7-19/2009719130148.html
查看更多关于sqlserver角色成员身份权限的详细内容...