SQL_连接数据库服务器.doc_第1页
SQL_连接数据库服务器.doc_第2页
SQL_连接数据库服务器.doc_第3页
SQL_连接数据库服务器.doc_第4页
SQL_连接数据库服务器.doc_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

连接数据库服务器第一节 用户权限说明这里我们简要介绍数据库的安全性,其主要目的是我们能够登录到数据库服务器上开始建立我们的数据库。所谓数据库的安全性是指必须保证具有数据访问权限的用户登录到SQL Server,并且能够访问到相应的数据和对相应的数据对象进行合理操作。SQL Server的安全构架比较复杂,需要数据库系统管理员、操作系统管理员、网络管理员进行共同管理,建立一个安全可靠的数据库环境。用户登录:使用用户登录,SQL Server就能够识别授权用户。数据库权限:权限管理和许可权限是一件事情。所谓数据库权限是指定授权可以使用的数据库对象和这些授权用户可以对这些数据库对象所进行的操作。角色:一个角色能够把使用者组合为单一的整体,并且对这一组使用者赋予相同的权限。使用角色,SQL Server管理者可以把一组用户设置为某一个角色,只要对角色进行权限管理也就可以对全组用户进行权限管理。 一、用户登录身份验证模式 :Windows身份验证 混合认证模式登录帐户:是用于连接到SQL Server的帐户。用户帐户 :是数据库中的帐户,每一个数据库都有一套自己的用户帐户。只有拥有了用户帐户才能访问数据库。登录帐户和用户帐户之间的区别是我们理解这些问题的关键。下面看一下这两者之间的区别。登录帐户只是通过了Windows NT或者SQL Server认证。SQL Server提供了三个缺省登录帐户:sa(system administrator)、administrators/builtin、guest。用户帐户是基于数据库的,两个不同的数据库可以有相同的用户帐户。一个登录帐户与一个或者多个用户帐户相对应。登录帐户sa自动对应数据库中的用户帐户dbo。二、数据库权限数据库权限用于控制数据库对象的访问。数据库权限分为:语句权限、对象权限。语句权限也称为服务器权限,这些权限包括:Create table、Create database、Backup database、Create index等。一般语句权限只用于授予数据库系统管理员。对象权限:对象权限是授予用户访问数据库对象的某一类权限。数据库对象包括:表、视图、存储过程、触发器等。对象权限是指定某一类操作,例如:查询、修改、插入、删除等(select, update, insert, delete)。三、角色角色是为特定工作组、作业分类或者作业任务而设置的。用户帐户根据对数据库所执行的工作成为一个或者多个数据库角色的成员。SQL Server支持三种类型角色:固定服务器角色、固定数据库角色、用户自定义角色。 1、固定服务器角色:固定服务器角色是定义在服务器级别上的。固定服务器角色有:-sysadmin:执行SQL Server中任何操作-setupadmin:安装和复制扩展过程-securityadmin:管理登录和建立数据库的准备工作-serveradmin:配置服务器设置-diskadmin:磁盘空间管理-dbcreator:创建和修改数据库-processadmin:管理SQL Server进程2、固定数据库角色:固定数据库角色定义在数据库级别上,存在于数据库中,也属于数据库服务器。固定数据库角色有:-db_owner 执行数据库中所有操作的用户-db_accessadmin 增加、删除用户的用户-db_datareader 查看所有数据库用户表中数据的用户 -db _ddladmin 在数据库中执行DDL操作的用户 -db_securityadmin 执行数据库中所有有关安全权限操作的用户-db_backupoperator 备份数据库的用户-db_denydatareader 不能查看数据库中数据的用户-db_denydatawriter 不能改变数据库中数据的用户在固定数据库角色中有两个特殊的角色:-dbo:dbo是一个特殊用户,它与固定服务器角色 sysadmin(在服务器中可以执行任何操作)和固定数据库角色db_owner(在数据库中可以执行任何操作)有密切联系。每一个数据库只能有一个dbo,dbo是不能被删除的。-public:public是一个特殊用户,它表示每一个合法的数据库用户。每一个数据库只能有一个public,并且不能被删除。3、用户自定义角色:用户自定义角色是一组用户,这些用户具有相同的许可权限。如果有一组用户要在SQL Server中执行一组操作,但是没有对应的Windows NT组,或者没有管理Windows NT组的权限,则要建立用户自定义角色。一般情况下,不需要建立用户自定义角色。 例子练习:使用混合验证模式以administrator登录Windows 2000以登录帐户sa进入SQL Server 建立一个新的登录帐户cmrsql,密码cmrsql授予cmrsql不同角色,可以看出cmrsql会具有不同权限第二节 管理用户登录一、建立SQL Server 登录1、使用【企业管理器】2、使用SQL语句建立登录使用下列存储过程能够建立登录:sp_addlogin:把经过SQL Server验证身份的登录帐户添加到数据库中。sp_grantlogin:把经过Windows验证身份的登录用户添加到数据库中。sp_addlogin的用法:sp_addlogin loginame= , passwd = , defdb= , deflanguage = , sid = , encryptopt = 例子:建立一个名为cmrsql8、密码为cmrsql8、缺省数据库为pubs 的登录帐户,在【查询分析器】中使用下列命令: exec sp_addlogin loginame=cmrsql8,passwd=cmrsql8 ,defdb= pubssp_grantlogin的用法:sp_grantlogin 这里的格式为系统名称登录帐户。例如,exec sp_grantlogin cmrcmrsujuncmrsujun必须是Windows NT的认证用户。3、使用【登录向导】二、建立SQL Server用户1、使用【企业管理器】2、使用SQL语句建立用户sp_adduser存储过程建立数据库用户。sp_ adduser loginame= , name_in_db = , grpname= sp_adduser的例子:exec sp_adduser cmrcmrsujun ,teacher这个命令建立一个Windows NT帐号为cmrcmrsujun、数据库用户帐户为teacher。sp_adduser的例子:exec sp_adduser cmrsql ,zhangsan这个命令建立一个登录帐户为cmrsql、数据库用户帐户为zhangsan。第三节 管理数据库权限一、授予权限(GRANT)授予对象权限这里我们以对于前面所建立的pubs数据库用户zhangsan授予查询authors表的权限为例,来说明授予对象权限的操作过程。使用【企业管理器】SQL语句GRANT ALL | ON ( )TO WITH GRANT OPTION AS | 例如:grant select on authors(au_fname,au_lname,address)to zhangsanwith grant option 例子,授予数据库pubs的zhangsan用户拥有对表authors中address、au_fname、au_lnamed的查询权限,执行下列语句:grant select on authors(au_fname,au_lname,address)to zhangsan 2、授予语句权限backup databasebackup logcreate databasecreate defaultcreate rulecreate tablecreate view授予语句权限:使用【企业管理器】SQL语句GRANT ALL | TO 例子,允许数据库用户zhangsan在pubs中建立表,执行下列语句:grant create table to zhangsan二、回收权限1、回收对象权限回收权限是禁止用户使用某一个对象权限或语句权限。缺省情况下,只有下列两种角色才能执行回收权限的操作:-sysadmin、db_owner、db_securityadmin角色的成员-数据库对象的拥有者使用SQL语句回收对象权限:REVOKE GRANT OPTION FOR ALL | ON ( )FROM AS | 例子,回收张三对表authors的所有权限,执行下列语句:revoke allon authorsfrom zhangsan2、回收语句权限SQL语句语法格式REVOKE ALL | FROM 例子,要把数据库用户zhangsan在pubs中建立表的权限撤销,执行下列语句:revoke create table from zhangsan关于授权和回收权限的说明:谁要执行GRANT或者REVOKE语句这种权限操作是针对哪个数据库的它要把什么样的权限授予哪个用户或者从哪个用户那里回收回来在授予或者回收权限的过程是否附带了再授权的权限(WITH GRANT OPTION或者GRANT OPTION FOR)针对数据库权限操作要在master数据库中进行。SQL Server特别提出了明确禁止访问的DENY语句。第四节 管理角色利用数据库角色可以简化把许多权限分配给许多用户的复杂管理任务。建立一个代表一组用户的一个新角色,然后把这个角色分配给这个工作组。一个用户可以是一个或者多个角色的成员。管理角色包括新建、修改和删除数据库角色。管理角色的工具:-【企业管理器】-SQL语句管理角色的步骤:-建立数据库角色-对角色分配权限-把用户加入角色或者从角色中删除 一、建立数据库角色1、使用【企业管理器】增加编辑角色2、使用SQL语句管理角色 sp_addrolesp_addrolemembersp_droprolemembersp_droprolesp_helprolesp_helprolemembersp_addrole的用法:语法 sp_addrole rolename= , ownername= 例子,要把bianji角色添加到pubs数据库中,使用下列命

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论