账户和存取权限PPT演示文稿.ppt

上传人:rrsccc 文档编号:8880768 上传时间:2021-01-23 格式:PPT 页数:32 大小:161KB
返回 下载 相关 举报
账户和存取权限PPT演示文稿.ppt_第1页
第1页 / 共32页
账户和存取权限PPT演示文稿.ppt_第2页
第2页 / 共32页
账户和存取权限PPT演示文稿.ppt_第3页
第3页 / 共32页
账户和存取权限PPT演示文稿.ppt_第4页
第4页 / 共32页
账户和存取权限PPT演示文稿.ppt_第5页
第5页 / 共32页
点击查看更多>>
资源描述

《账户和存取权限PPT演示文稿.ppt》由会员分享,可在线阅读,更多相关《账户和存取权限PPT演示文稿.ppt(32页珍藏版)》请在三一文库上搜索。

1、1,SQL Server的验证模式 账户和角色,第4章 账户和存取权限,2,在数据库管理系统中,用检查口令等手段来检查用户身份,合法的用户才能进入数据库系统。当用户对数据库执行操作时,系统自动检查用户是否有权限执行这些操作。,3,4.1 SQL Server的验证模式,SQL Server对用户的访问进行两个阶段的检验: 验证阶段 登录SQL Server时进行的检查。如果验证通过,用户就可以连接到SQL Server上;否则,服务器将拒绝用户的登录。 SQL Server 2005支持两种身份验证模式:Windows身份验证模式和混合验证模式。 许可确认阶段 登录到SQL Server上以后

2、,系统检查用户是否有访问服务器上数据的权限。,4,4.1.1 Windows模式验证 在windows验证模式下,SQL Server检测当前使用的Windows用户帐户,确定该账户是否有权限登录。该模式不必提交登录名和密码。 SQL Server从RPC协议(远程过程调用协议)连接中自动获取登录过程中的Windws用户帐户信息。多协议和命名管道自动使用PRC协议。 要使用多协议和命名管道在客户和服务器间建立连接,客户端的用户必须有合法的服务器上的Windows帐户,或者服务器启动了Guest帐户。,4.1 SQL Server的验证模式,5,Windows验证模式有以下主要优点: 数据库管理

3、员的工作可以集中在管理数据库上面,而不是管理用户账户。对用户账户的管理可以交给Windows去完成。 Windows有着更强的用户账户管理工具。可以设置账户锁定、密码期限等。 Windows的组策略支持多个用户同时被授权访问SQL Server。,4.1 SQL Server的验证模式,6,4.1.2 混合验证模式 混合验证模式允许以SQL Server验证模式或者Windows验证模式来进行验证。使用哪种模式取决于在最初的通信时使用的网络库。 如果一个用户使用的是TCP/IP Sockets进行登录验证,则将使用SQL Server验证模式;如果用户使用Named Pipes,则登录时将使用

4、Windows验证模式。 如果网络主要是Windows网,则用户登录Windows已经得到了确认,使用Windows验证模式将减轻系统的工作负担。 如果网络主要是Novell网或对等网,则使用SQL Server验证模式比较方便。,4.1 SQL Server的验证模式,7,SQL Server验证模式处理登录的过程: 用户输入登录名和密码后, SQL Server在系统注册表中检测输入的登录名和密码。如果输入的登录名存在,而且密码也正确,就可以登录到SQL Server上。,4.1 SQL Server的验证模式,8,混合验证模式具有如下优点: 创建了Windows之上的另外一个安全层次。

5、支持更大范围的用户,例如非Windows客户、Novell网络等。 一个应用程序可以使用单个的SQL Server登录和口令。,4.1 SQL Server的验证模式,9,4.1.3 设置验证模式 在第一次安装SQL Server,或者使用SQL Server连接其他服务器的时候,需要指定验证模式。 对于已经指定验证模式的SQL Server服务器,在SQL Server中可以进行修改。,4.1 SQL Server的验证模式,10,将Windows 验证模式改为 SQL Server 验证模式并启用 sa 登录帐户: 第1步:在“对象资源管理器”窗口中,选择服务器,右击,在弹出的快捷菜单上选

6、择“属性”命令,然后在打开的“服务器属性”对话框中,选择“安全性”选项,打开“安全性”选项卡 . 第2步:在“服务器身份验证”栏中选择“SQL Server和Windows身份验证模式” ,单击“确定”按钮. 第3步:从 SQL Server Management Studio 重新启动 SQL Server。在对象资源管理器中,右击服务器,再单击“重新启动”。如果运行有 SQL Server 代理,则也必须重新启动该代理。,4.1 SQL Server的验证模式,11,第4步:启用 sa 登录帐户 方法一:使用 Transact-SQL 启用 sa 登录帐户: 执行下列语句以启用 sa 帐户

7、并分配一个密码。 ALTER LOGIN sa ENABLE ;GOALTER LOGIN sa WITH PASSWORD = ;GO 方法二:使用 Management Studio 启用 sa 登录帐户: 在对象资源管理器中,依次展开“安全”、“登录名”,右键单击“sa”,再单击“属性”。 在“常规”页上,为 sa 登录名创建密码并确认该密码。 在“状态”页的“登录”部分中,单击“启用”,然后单击“确定”。,4.1 SQL Server的验证模式,12,4.2 账户和角色,SQL Server的两种账户: 登录服务器的登录帐户(login name) 登录帐户只是让用户登录到SQL Se

8、rver中,并不能让用户访问服务器中的数据。要访问特定的数据库,还必须具有用户名。 使用数据库的用户帐户(user name ) 用户名在特定的数据库内创建。用户定义的信息放在服务器上的每个数据库的sysusers表中。通过授权给用户来指定用户可以访问的数据库对象的权限。,13,4.2.1 登录帐户 登录到SQL Server,必须具有一个登录帐户。 登录帐户的创建 登录帐户的属性修改 登录帐户的删除,4.2 账户和角色,14,创建以sql server身份验证的登录账户,步骤: 1. 打开SQL Server Manager Studio,展开服务器,在 “安全性”下的“登录名”上右击,选择

9、新建登录名”,弹出“登录名-新建”对话框,在登录名框中输入登录名,如:bookadm,选择“SQL SERVER身份验证”,并输入密码,可以把“用户下次登录时必须修改密码”取消掉。 在“选择页”中单击“服务器角色”,选择登录帐户所属的服务器角色。 在“选择页”中单击“用户映射”,在上面一栏选择要映射的数据库,如bookdb,在用户列会自动出现数据库用户bookadm。在下面一栏中的选中“db-owner”和“public” 。 在“选择页”中单击状态选中“授予”、“启用”,然后点击确定。,4.2 账户和角色,15,2. 右击SQL服务器,选择“属性”,弹出的“服务器属性”对话框中,单击“安全性

10、”,在“服务器身份验证”下面选中“SQL SERVER和WINDOWS身份验证模式”。 3. 重新启动服务器并登录: 右击服务器,选择“重新启动”或“停止”后再“启动”,打开“文件”菜单,选择“连接对象资源管理器”,在打开的对话框中输入刚才的用户名和密码就可以登录了。,4.2 账户和角色,16,创建以Windows身份验证的登录账户: 在 “登录名-新建”对话框中,在登录名文本框中输入登录名,选择“Windows 身份验证”,单击“搜索”按钮,在打开的“选择用户和组”对话框中输入Windows系统的用户作为登录帐户。,4.2 账户和角色,17,登录账户的属性修改: 在登录帐户上右击,选择“属性

11、”,打开登录帐户属性对话框,在该对话框中可对其属性进行修改。,4.2 账户和角色,18,登录账户的删除: 在登录帐户上右击,选择“删除”,在打开的对话框中选择“确定”。,4.2 账户和角色,19,两个默认登录帐户: 1. BUILTINAdministrators 凡是属于Windows中的Administrators组的帐户都允许登录SQL Server。 2. sa 超级管理员帐户 允许SQL Server的系统管理员登录,此SQL Server的管理员不一定是Windows管理员。,4.2 账户和角色,20,4.2.2 数据库用户 每个登录帐户在一个数据库中只能有一个用户帐户,但是每个登

12、录帐户可以在不同的数据库中各有一个用户帐户。 在新建登录帐户时,可通过“用户映射”来创建一个与该登录帐户同名的数据库用户来指定数据库的存取权限。 登录帐户对某个数据库的访问权限,并不表示该登录帐户对该数据库具有存取权限。如果要对数据库中的对象进行插入等更新操作,还需要设置用户帐户的权限。,4.2 账户和角色,21,如果在创建登录帐户时没有指定对某个数据库的存取权限,则在数据库中,可创建一个新的用户帐户,并关联到该登录帐户,则该登录帐户会自动具有对该数据库的访问权限。 例:在AdventureWorks库中创建一个用户帐户A1,并将其关联到已存在的bookadm登录帐户中。,4.2 账户和角色,

13、22,4.2.3 角色 角色是一组用户所构成的组,在同一角色中的用户有相同的权限。 角色可将用户集中到一个单元中,然后对该单元应用权限。对一个角色授予、拒绝的权限也适用于该角色的任何成员。可以建立一个角色来代表单位中一类工作人员所执行的工作,然后给这个角色授予适当的权限。当工作人员开始工作时,只须将他们添加为该角色成员,当他们离开工作时,将他们从该角色中删除。而不必在每个人接受或离开工作时,反复授予、拒绝其权限。权限在用户成为角色成员时自动生效。,4.2 账户和角色,23,角色可分为服务器角色和数据库角色。 服务器角色:由服务器账户组成的组,负责管理和维护SQL Server组。 数据库角色:

14、由数据库成员所组成的组,数据库角色指定了可以访问相同数据库对象的一组数据库用户。当几个用户需要在某个特定的数据库中执行类似的动作时,就可以向该数据库中添加一个角色。,4.2 账户和角色,24,服务器角色 Sysadmin 可执行SQL Server中的任何动作 Serveradmin 可设置服务器范围的配置选项 Setupadmin 可管理链接服务器和启动过程 Securityadmin 可管理登录和创建数据库、读取错误日志和更改密码。 Processadmin 管理SQL Server进程 Dbcreator 创建、修改和删除数据库 Diskadmin 管理磁盘文件 Bulkadmin 可执

15、行大容量插入语句 Public 具有查看任何数据库的权限,4.2 账户和角色,25,数据库角色 db_owner 在数据库中有全部权限 db_accessadmin 可以添加、删除用户 db_datareader 可以查看所有数据库中用户表内数据 db_datawriter 可以添加、修改或删除所有数据库中用户表内数据的用户 db_ddladmin 可以在数据库中执行所有定义操作 db_securityadmin可以管理数据库中与安全权限有关所有动作 db_backupoperator 可以备份数据库 db_denydatareader 不能选择数据库中任何数据 db_denydatawrit

16、er 不能更改数据库中任何数据 Public 最基本的数据库角色,4.2 账户和角色,26,例:查看数据库bookdb中db_owner数据库角色的属性,并将用户bookadm加入到该角色中。 例:创建一个新的数据库角色oprole,并向该角色中添加数据库成员,然后设置该角色的权限。,4.2 账户和角色,27,应用程序角色 应用程序角色只使用应用程序,因而不需要把权限直接赋予用户,所以应用程序角色没有任何成员。此外需要为应用程序设置一个口令来激活它。 应用程序角色可以加强对某个特定的应用程序的安全。这些角色允许应用程序自己代替SQL Server接管用户身份验证的职责。比如,如果公司中的员工只

17、是使用某个特定的应用程序(而不是使用Transact-SQL语句或其他任何工具)来修改员工的数据信息,那么就可以为它创建一个应用程序角色。 当应用程序角色被应用程序的会话激活以用于连接时,在连接期间,会话就失去了登录、用户账户或所有数据库中的角色的权限。,4.2 账户和角色,28,public数据库角色的权限 public角色是一种特殊的固定数据库角色,当在数据库添加新用户帐户时,SQL Server会自动将新用户帐户加入public数据库角色中,即数据库的每个合法用户都属于该角色。 public角色为数据库中的用户提供了所有默认权限。 对于用户建立的数据库对象, public角色默认是不设置

18、权限。 public角色为数据库中的所有用户都保留了默认的权限,因此是不能被删除的。,4.2 账户和角色,29,4.2.4 用户和角色的权限问题 用户是否具有对数据库存取的权利,要看其权限设置而定,但是,它还要受其所属角色的权限的限制。,4.2 账户和角色,30,1. 用户权限继承角色的权限 用户对数据库对象的存取权限继承于所属角色。假如用户User1属于角色Role1,角色Role1已经取得对表Table1的SELECT权限,则用户User1也自动取得对表Table1的SELECT权限,如果角色Role1对表Table1没有INSERT权限,而用户User1取得了对表Table1的INSER

19、T权限,则User1最终也取得对表Table1的INSERT权限。 拒绝权限优先,只要角色Role1和用户User1中的之一拒绝,则该权限就是拒绝。,4.2 账户和角色,31,2. 用户分属不同角色 如果一个用户分属于不同的数据库角色,例如,用户User1即属于角色Role1,又属于角色Role2,则用户User1的权限是以Role1和Role2的并集为准。但是只要有一个拒绝,则用户User1的权限就是拒绝。,4.2 账户和角色,32,4.3.1 创建登录帐户Lib_Man 在LIB_DATA数据库中创建一个登录账户Lib_Man,默认登录数据库为LIB_ DATA,并关联一个数据库用户Lib_Man。 4.3.2 设置Lib_Man用户的权限 对Lib_Man用户设置SECLECT、INSERT和UPDATE权限。,4.3 上机实训,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1