登录、用户、角色、权限---精品资料_第1页
登录、用户、角色、权限---精品资料_第2页
登录、用户、角色、权限---精品资料_第3页
免费预览已结束,剩余1页可下载查看

下载本文档

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

文档简介

1、1. 管理和维护登录名技术1.1 SQL Server 的身份验证模式用户想操作 SQL Server 中某一数据库中的数据,必须满足以下 3 个条件:首先,登录 SQL Server 服务器时必须通过身份验证;其次,必须是该数据库的用户或 者是某一数据库角色的成员;最后,必须有执行该操作的权限。由此可看SQL Server 数据库的安全性检查是通过登录名、用户、权限来完成的。1.1.1 Windows 身份验证模式当用户通过 Windows 用户帐户进行连接时, SQLS erver 通过回叫 Windows 以获得信息, 重新验证帐户名和密码, 并在 sys.syslogins 系统视图中

2、查找该帐户, 确定该帐户是否有权 限登录。在这种方式下,用户不必提供登录名和密码让 SQL server 验证。1.1.2 混合验证模式 混合验证模式使用户能够通过 Windows身份验证或 SQL Server 身份验证与 SQL Server 实例连接。在 SQL Server 验证模式下, SQL Server 在 sys.syslogins 系统视图中检测输入 的登录名和密码。 如果在 sys.syslogins 视图中存在该登录名, 并且密码也是匹配的, 那么 该登录名可以登录到 SQL Server ;否则,登录失败。在这种方式下,用户必须提供登录名 和密码,让 SQL serve

3、r 验证。1.1.3 设置验证模式可以使用 SQL Server Management Studio 来设置或改变验证模式。当使用 SQL Server Management Studio 时,应遵循以下步骤:(1) 打开 SQL Server Management Studio ,在“对象资源管理器”中,右击需要修改验 证模式的服务器, 再单击快捷菜单中的“属性”选项, 出现服务器属性对话框, 在服务器属 性对话框中单击“安全性” 选择页。(2) 如果想仅使用 Windows 身份验证,选择“ Windows 身份验证模式”;如果想使用混 合认证模式,选择“ SQL Server 和 Win

4、dows 身份验证模式”。(3) 在“登录审核”中设置是否对用户登录SQL Server 2005 服务器的情况进行审核,即是否将登录成功和失败的信息写入 SQL Server 错误日志中。1.2 登录账户管理1.2.1 系统安装时创建的登录账户SQL Server 2005 安装好之后,系统会自动产生一些系统内置登录账户。本地管理员组 ( BUILTAdministrators ): 默认属于 sysadmin 角色中的成员, 因此具有 管理员权限。系统管理员 (sa): 默认情况下, 它指派给固定服务器角色 sysadmin ,并不能进行更改。1.2.2 创建登录账户1.2.2.1 使用

5、SQL Server Management Studio 添加 Windows 登录账户注意:授权一个 Windows 用户或组访问 SQL Server ,必须以这个用户登录到 Windows 后才能验证这个用户能否联接到 SQL Server 。授权用户或组访问 SQL Server 时,此 Windows 用户和组必须事先存在。1.2.2.2 使用 SQL Server Management Studio 添加 SQL Server 登录账户1.2.2.3 使用 CREATE LOGIN语句创建登录账户。CREATE LOGIN login_name WITH | FROM 例 11.1

6、 创建一个使 Windows用户 HBSIZangSan 得以连接到 SQL Server 的登录账户。CREATE LOGIN HBSIZhangSan FROM WINDOWS例 11.2 创建一个 SQL Server 登录,登录名为 lisi 并指定密码 abcd 。CREATE LOGIN lisi WITH PASSWORD = abcd 1.2.3 修改登录账户(1) 使用 SQL Server Management Studio 修改登录账户的属性在 SQL Server Management Studio 的“对象资源管理器”中,展开服务器下的“安全 性”节点, 展开“登录名

7、”, 右击需要修改的登录名, 在快捷菜单中选择“属性”, 弹出“登 录属性”对话框。在此对话框中进行相应的属性修改,如默认数据库、默认语言、密码等, 还可以对账户的状态属性进行修改。(2) 使用 ALTER LOGIN语句修改登录账户属性ALTER LOGIN login_name | WITH ,. 例 11.3 将 lisi 登录账户名称更改为 lisi_new 。ALTER LOGIN lisi WITH NAME=lisi_new例 11.4 将 lisi_new 登录账户的密码修改为“ abcdef ”。ALTER LOGIN lisi_new WITH PASSWORD=abcde

8、f 1.2.4 删除登录账户(1) 使用 SQL Server Management Studio 删除登录账户(2) 使用 DROP LOGIN语 句删除登录账户DROP LOGIN login_name例 11.5 删除登录账户 lisi_new 。DROP LOGIN lisi_new2数据库用户管理2.1 默认数据库用户2.1.1 数据库所有者 (DataBase Owner ,dbo)dbo 是数据库的所有者,拥有数据库中的所有对象,每个数据库都有 dbo, sysadmin 服务器角色的成员自动映射成 dbo, 无法删除 dbo 用户,且此用户始终出现在每个数据库 中。通常,登录名

9、 sa 映射为库中的用户 dbo 。另外,由固定服务器角色 sysadmin 的任何成员创建的任何对象都自动属于dbo。2.1.2 Guest 用户Guest 用户帐户允许没有用户帐户的登录名访问数据库。 当登录名没有被映射到一个用 户名上时,如果在数据库中存在 Guest 用户,登录名将自动映射成 Guest ,并获得相应的数 据库访问权限。 Guest 用户可以和其他用户一样设置权限,不能删除 Guest 用户,但可在除 master 和 tempdb 之外的任何数据库中禁用 Guest 用户。2.1.3 Information_schema 和 sys 用户每个数据库中都包含 Infor

10、mation_scheme 和 sys 用户,它们出现在目录视图中。使用 它们获取有关数据库的元数据信息。2.2 创建数据库用户2.2.1 使用 SQL Server Management Studio 添加数据库用户2.2.2 使用 CREATE USER语句添加数据库用户CREATE USER user_name FOR | FROM LOGIN login_name例 11.7 在 AdventureWorks 数据库中创建数据库用户 zhangsan ,其登录名为 zhangsan 。 Use AdventureWorksGoCREATE USER zhangsan FROM LOGI

11、N zhangsan3. 固定服务器角色的特点和管理3.1 角色管理 角色是为了易于管理而按相似的工作属性对用户进行分组的一种方式。在 SQL Server 中,组是通过角色来实现的。在 SQL Server 中,角色分为服务器角色和数据库角色两种。 服务器角色是服务器级别的一个对象, 只能包含登录名。 数据库角色是数据库级别的一个对 象,只能包含数据库用户名。3.1.1 固定服务器角色 固定服务器角色: Sysadmin、Serveradmin 、 Setupadmin 、 Securityadmin 、Processadmin 、 Dbcreator 、 Diskadmin 、 bulka

12、dmin 。3.1.1.1 使用 SQL Server Management Studio 将登录账户添加到固定服务器角色3.1.1.2 使用存储过程 sp_addsrvrolemember 办法用来添加登录账户, 使其成为服务器 角色的成员sp_addsrvrolemember login,role其中: login :添加到固定服务器角色中的登录名。 role :要添加登录名的固定服务器 角色的名称。3.1.2 固定数据库角色固定数据库角色: db_owner 、 db_accessadmin 、 db_datareader 、 db_datawriter 、 db_ddladmin 、

13、db_securityadmin 、 db_backupoperator 、 db_denydatareader 、 db_denydatawriter 、 Public 。(1)使用 SQL Server Management Studio 将用户添加到固定数据库角色( 2)使用存储过程 sp_addrolemember 来添加用户,使其成为数据库角色的成员 其语法格式为: sp_addrolemember role , security_account其中: role :当前数据库中的数据库角色的名称。 security_account :是添加到该角 色的用户。3.1.3 自定义数据库角

14、色当一组用户需要在 SQL Server 中执行一组指定的活动时,为了方便管理,可以创建用 户自定义的数据库角色。( 1)使用 SQL Server Management Studio 创建用户自定义数据库角色。(2)使用 CREATE ROLE语句创建数据库角色CREATE ROLE role_name AUTHORIZATION owner_name 其中: role_name :将创建的数据库角色名称。AUTHORIZATION owner_name :将拥有新角色的数据库用户或角色。(3)应用程序角色 当要求对数据库的某些操作不允许用户用任何工具来进行操作, 而只能用特定的应用程 序来

15、处理时就可以建立应用程序角色。 应用程序角色不包含成员; 默认情况下, 应用程序角 色是非活动的, 需要用密码激活。 在激活应用程序角色以后, 当前用户原来的所有权限会自 动消失, 而获得了该应用程序角色的权限。 可以通过图形界面创建应用程序角色, 也可以通 过 CREATE APPLICATION ROLE语 句来创建。3.2. 权限管理权限类型 : 权限用来控制用户如何访问数据库对象。一个用户可以直接分配到权限,以 可以作为一个角色的成员来间接的得到权限。 一个用户可以同时属于具有不同权限的多个角 色。权限分为:对象权限、语句权限、暗示性权限。对象权限 : 是指用户访问和操作数据库中表、视

16、图、存储过程等对象的权限。 有五个不同的权限:查询 (SELECT)、插入(INSERT)、更新( UPDATE)、删除(DELETE)、 执行( EXECUT)E。前四个权限用于表和视图,执行只用于存储过程。3.2.1 语句权限语句权限是指用户创建数据库或在数据库中创建或修改对象、 执行数据库或事务日志备 份的权限。 语句权限有: BACKUPD ATABAS、E BACKUPL OG、CREATED ATABAS、EDEFAULT、CREATE FUNCTION、CREATE PROCEDU、RECREATE RULE、 CREATE TABL、E CREATE VIEW。3.2.2 暗示

17、性权限 暗示性权限是指系统预定义角色的成员或数据库对象所有者所拥有的权限。例如, sysadmin 固定服务器角色成员自动继承在 SQL Server 安装中进行操作或查看的全部权 限。 数据库对象所有者还有暗示性权限,可以对所拥有的对象执行一切活动。3.2.3 权限管理操作 一个用户或角色的权限可以有三种存在的形式:授予( granted )、拒绝( denied )、废 除(revoked )。授予是赋予用户某权限; 拒绝是禁止用户的某权限;废除是撤销以前授予或 拒绝的权限。3.2.3 1使用 SQL Server Management Studio 管理权限3.2.3 2用 Transa

18、ct_SQL 语句管理权限(1)语句权限GRANT/DENY/REVOKE ALL | statement , n TO security_account ,n 其中: ALL:表示授予 / 拒绝/ 废除所有可用的权限。Statement :是被授予 / 拒绝 / 废除的语句,可以包括 11.5 中介绍的所有的语句权限。 security_accoun :是权限将应用的用户。例如,给用户 user1 创建表的权限。USE salesGOGRANT CREATE TABLE TO user1Go( 2)对象权限GRANT/DENY/REVOKE ALL PRIVILEGES | permission ( column ,.n

温馨提示

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

评论

0/150

提交评论