当前位置: 首页 > 图文教程 > 数据库 > MSSQL > SQL Server数据库技术(97)

MSSQL
SQL Server TEXT、NTEXT字段拆分的问题
SQL Server事务日志的几个常用操作
SQL Server不存在或拒绝访问故障的排除
动态创建MSSQL数据库表存储过程
教你如何在SQL Server计算列和平均值
如何应用SQL Server中的DBCC避免堵塞
SQLServer2000分布式事务错误解决方法
通用SQL数据库查询语句精华使用简介
利用typeperf工具收集SQL Server性能数据
SQL 2008 FileStream数据类型
自定义用于ASP Web站点的 SQL 7.0 数据库
SQL server 2005安装问题大全
利用"SQL"语句自动生成序号的两种方式
SQL Server数据库管理员必备的DBCC命令
讲解在SQL Server 2005中实现异步触发器架构
SQL Server 2008的新特性概述:集成服务
SQL Server 2008关系数据库引擎的新增功能
浅析SQL 2008的Change Data Capture功能
在IIS中为SQL Server 2008配置报表服务
SQL Server 2008中报表服务详解

MSSQL 中的 SQL Server数据库技术(97)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-30   浏览: 84 ::
收藏到网摘: n/a

14.4.1 权限管理简介
    用户在登录到SQL Server 之后,其安全账号(用户账号)所归属的NT 组或角色所被授予的权限决定了该用户能够对哪些数据库对象执行哪种操作以及能够访问、修改哪些数据。在SQL Server 中包括两种类型的权限,即对象权限和语句权限。

(1) 对象权限
    对象权限总是针对表、视图、存储过程而言,它决定了能对表、视图、存储过程执行哪些操作(如UPDATE、 DELETE、 INSERT、 EXECUTE)。如果用户想要对某一对象进行操作,其必须具有相应的操作的权限。例如,当用户要成功修改表中数据时,则前提条件是他已经被授予表的UPDATE 权限。
    不同类型的对象支持不同的针对它的操作例,如不能对表对象执行EXECUTE 操作。我们将针对各种对象的可能操作列举如表14-1 所示:


    注意:REFERENCE充许在GRANT、DENY、REVOKE语句中向有外键参照表中插入一行数据。

(2) 语句权限
    语句权限主要指用户是否具有权限来执行某一语句,这些语句通常是一些具有管理性的操作,如创建数据库、表、存储过程等。这种语句虽然仍包含有操作如(CREATE)的对象,但这些对象在执行该语句之前并不存在于数据库中如创建一个表,在CREATE TABLE 语句未成功执行前数据库中没有该表),所以将其归为语句权限范畴。表14-2 是所有的语句权限清单。




各参数含义说明如下:
  • ALL
    表示具有所有的语句或对象权限。对于语句权限来说,只有sysadmin 角色才具有所有的语句权限;对于对象权限来说,只有sysadmin 和db_owner 角色才具有访问某一数据库所有对象的权限。
  • statement
    表示用户具有使用该语句的权限。这些语句包括:
    CREATE DATABASE; CREATE DEFAULT; CREATE PROCEDURE CREATE
    RULE CREATE TABLE; CREATE VIEW;BACKUP DATABASE; BACKUP LOG
  • WITH GRANT OPTION
    表示该权限授予者可以向其它用户授予访问数据对象的权限。
????????    

REVOKE和DENY语法格式与GRANT语法格式一样。



14.4.2 利用SQL Server Enterprise Manager 管理权限
    在SQL Server 中通过两种途径可实现对语句权限和对象权限的管理,从而实现对用户权限的设定。这两种途径分别为面向单一用户和面向数据库对象两种权限设置。

1 面向单一用户的权限设置
在SQL Server Enterprise Manager 其执行步骤为:
(1) 启动SQL Server Enterprise Manage, 登录到指定的服务器。
(2) 展开指定的数据库,然后单击Users 图标,此时在右窗格中将显示数据库所有用户。
(3) 在数据库用户清单中选择要进行权限设置的用户,右击用户名,然后在弹出 菜单中选择Properties, 弹出Database User Properties 对话框,如图14-6 所示。


(4) 在Database User Properties 对话框中单击Permission 按钮,弹出如图14-7 所示的Database User Properties 对话框,在该对话框中进行对象权限设置。


(5) 单击确定,完成权限设置。 在图14-6 的对话框