数据库角色和服务器角色总结
2017-10-21 15:03
155 查看
sql2000的数据库角色和服务器角色总结
SQL Server 2000 和 SQL Server 7.0 版在安装过程中定义几个固定角色。可以在这些角色中添加用户以获得相关的管理权限。下面是服务器范围内的角色。全名 | 固定服务 器角色 | 描述 |
System Administrators | sysadmin | 可以在 SQL Server 中执行任何活动。 |
Server Administrators | serveradmin | 可以设置服务器范围的配置选项,关闭服务器。 |
Setup Administrators | setupadmin | 可以管理链接服务器和启动过程。 |
Security Administrator | securityadmin | 可以管理登录和 CREATE DATABASE 权限,还可以读取错误日志和更改密码。 |
Process Administrator | processadmin | 可以管理在 SQL Server 中运行的进程。 |
Database Creators | dbcreator | 可以创建、更改和除去数据库。 |
Disk Administrators | diskadmin | 可以管理磁盘文件 |
Bulk Insert Administrators | bulkadmin | 可以执行 BULK INSERT 语句。 |
每个数据库都有一系列固定数据库角色。虽然每个数据库中都存在名称相同的角色,但各个角色的作用域只是在特定的数据库内。例如,如果 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 | 不能更改数据库内任何用户表中的任何数据。 |
数据库中的每个用户都属于 public 数据库角色。如果想让数据库中的每个用户都能有某个特定的权限,则将该权限指派给 public 角色。如果没有给用户专门授予对某个对象的权限,他们就使用指派给 public 角色的权限。
权限
Microsoft® SQL Server™ 2000 数据库中的每个对象都有所有者,而所有者通常是对创建该对象的连接有效的用户 ID。其他用户只有在相应所有者对其用户 ID 进行了访问授权后,方可访问该对象。
某些 Transact-SQL 语句也要受到特定用户 ID的限制。例如,CREATE DATABASE 仅限于 sysadmin 和 dbcreator 固定服务器角色的成员使用。除非得到授权,否则用户不能访问对象或执行语句。
用户发出的所有 Transact-SQL 语句均受限于给用户赋予的权限。sysadmin 固定服务器角色的成员、db_owner 固定数据库角色的成员以及数据库对象的所有者都可授予、拒绝或废除某人或某个角色的权限。当使用 Transact-SQL 时,使用 GRANT、DENY 和 REVOKE 语句可指定谁可使用哪种数据修改语句:
GRANT 赋予使用或执行其它 Transact-SQL 语句的权限。
DENY 拒绝权限并防止指定的用户、组或角色从组和角色成员的关系中继承权限。
REVOKE 取消以前授予或拒绝了的权限。
可授予对象的权限有:
SELECT
允许用户对表或视图发出 SELECT 语句。
INSERT
允许用户对表或视图发出 INSERT 语句。
UPDATE
允许用户对表或视图发出 UPDATE 语句。
DELETE
允许用户对表或视图发出 DELETE 语句。
REFERENCES
允许用户对表的主键和唯一列生成外键引用。还用于允许从视图和函数中引用 SCHEMABINDING。
EXECUTE
允许用户对存储过程发出 EXECUTE 语句。
也可通过授予权限来执行通常限于具有特定角色的成员使用的 Transact-SQL 语句。例如,sysadmin 固定服务器角色的成员可授予通常无法创建数据库的用户 CREATE DATABASE 权限。
相关文章推荐
- sql2000的数据库角色和服务器角色总结
- sql2000的数据库角色和服务器角色总结
- sql2000的数据库角色和服务器角色总结
- Oracle创建删除用户、角色、表空间、导入导出数据库命令行方式总结
- SQLServer中服务器角色和数据库角色权限详解
- SqlServer服务器和数据库角色
- MS SQL数据库的服务器角色和数据库角色 简述
- SQL Server 登录名、服务器角色、用户名和数据库角色 --- 解释
- SQL Server中的角色(服务器级别和数据库级别角色)
- sqlserver里服务器角色,服务器登录名,数据库用户,数据库角色,数据库架构的理解
- Sql2012如何将远程服务器数据库及表、表结构、表数据导入本地数据库 自定义日志记录功能,按日记录,很方便 C#常量和字段以及各种方法的语法总结 类型,对象,线程栈,托管堆在运行时的关系,以及clr如何调用静态方法,实例方法,和虚方法 asp.net webapi 自定义身份验证
- MS-SQL2005服务器登录名、角色、数据库用户、角色、架构的关系
- 登录名、服务器角色、用户名和数据库角色
- SQLServer中服务器角色和数据库角色权限详解
- SQLserver2005服务器登录名、角色、数据库用户、架构
- [SQL Server] 服务器角色和数据库角色权限详解
- 倪蒙oralce学习笔记之Oracle创建删除用户、角色、表空间、导入导出数据库总结
- [转]Oracle创建删除用户、角色、表空间、导入导出数据库命令行方式总结
- Oracle创建删除用户、角色、表空间、导入导出数据库命令行方式总结(转)
- SQL Server 中的服务器和数据库角色 (ADO.NET)