数据库安全性
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
上一页
下一页
返回本章首页
第7章 数据库安全性
7.2.2用T-SQL语句创建、查看、删除SQL Server登录帐户
1. 将已经存在的NT登录(NT组或用户)增加到SQL Server系统 登录中 使用系统存储过程sp_grantlogin、sp_denylogin、 sp_revokelogin可以分别允许、阻止、删除Windows NT组或用户到 SQL Server的连接。 sp_grantlogin的语法形式如下:
Windows身份验证模式使用Windows操作系统本身提供 的安全机制验证用户的身份。只要用户能够通过Windows NT或Windows 2000的用户帐户验证,就可连接到SQL Server。
本节首页
上一页 下一页 返回本章首页
第7章erver的影响
在 Windows NT/2000的注册表内,保存了SQL Server验证模式的相关信息及启动SQL Server的必须 信息. 在注册表中,我的电脑 \KHEY_LOCAL_MACHINE\Software\Microsoft\MSS QLServer\MSSQLServer中的LoginMode的值决定采用 哪种验证模式.每次启动SQL Server时,都将检索该键 的值,以决定使用哪种验证模式.
本节首页
上一页
下一页
返回本章首页
第7章 数据库安全性
SQL Server的登录访问确认
验证 SQL Server 验证信任连接 SQL Server
Windows 2000 组或用户
或
Windows 2000
SQL Server 验证账户名和密码 SQL Server 登录账户
上一页
下一页
返回本章首页
上一页 下一页 返回本章首页
第7章 数据库安全性
第
11
章 安 全 管 理
(2) 使用企业管理器创建Windows用户或组 1)启动企业管理器,展开相应的服务器组和服务器节点。 2)单击并展开“安全性”节点,右击“登录”项,在弹出的快捷菜单 中执行“新建登录”命令,出现 “新建登录”对话框。 3)在“名称”输入框中输入Windows中已存在的用户账号或工作组名称, 这里输入“users”工作组。 4)在“身份验证”单选按钮组中选中“Windows身份验证”单选项,表 示该登录使用Windows身份验证。 5)在“域”输入框中输入或选择一个使用的域名。这里输入 “BUILTIN”,表示内置本地组。 6)在“默认设置”栏的“数据库”列表框中选择一个默认的数据库。 7)单击“确定”按钮,即可将Windows工作组users映射成SQL Server 的登录帐户。
sp_helplogins
【例7-1】创建一个登录帐户为ABC,密码为123、使用的默认数据库 为JWGL。
EXEC sp_addlogin ' ABC „ , '123„ , ' jwgl'
EXEC sp_addlogin „a1‟ , ‟111‟ , ‟jwgl‟ EXEC sp_addlogin „a2‟ , „222‟ , „master‟
上一页
下一页
返回本章首页
第7章 数据库安全性
使用Windows NT验证有如下特点:
– NT验证模式下由Windows NT管理用 户帐户,数据库管理员的工作是管理 数据库; – Windows NT有功能很强的工具去管 理用户帐户,如安全验证和密码加密、 审核、密码过期、最短密码长度以及 在多次登录请求失败后锁定帐户; – 可以在SQL Server增加用户组;
sp_grantlogin {login }
sp_denylogin的语法形式如下:
sp_denylogin {login }
sp_revokelogin的语法形式如下:
sp_revokelogin {login }
上一页
下一页
返回本章首页
第7章 数据库安全性
注意:在要增加的帐户login前面要加上域名及 “\”,而且这三个存储过程不能放在同一个批中执行。 将Window NT帐户增加到SQL Server系统的时候, 应该考虑以下因素: – 如果Windows NT 用户不是SQL Server组的成 员,可以为其建立一个登录帐户 – 如果某个Windows NT组中的每个成员都要连 接到SQL Server上,可以为该组建立一个登 录帐户 – 删除Windows NT 组或用户,不会删除SQL Server中对应的登录帐户
上一页
下一页
返回本章首页
第7章 数据库安全性
7.1.1 NT 验证模式
NT验证模式是指要登录到SQL Server系统的用户 身份由NT系统来进行验证。在NT登录验证模式下, SQL Server回叫Windows NT以获得相应的登录信息, 并在sysxlogins表中查找该帐户,以确定该帐户是否 有权登录。在这种方式下,用户不必提供登录名或密 码让SQL server验证。
<
>
上一页
下一页
返回本章首页
第7章 数据库安全性
2. 使用T-SQL语言创建、查看、删除SQL Server登录帐户 ⑴ SQL Server登录帐户的创建 使用系统存储过程 sp_addlogin 可以创建一个登录帐户。sp_addlogin 存储过程的语法形式如下: sp_addlogin {'login'} [,password [,'default_database']] login:要被创建的登录帐户。它是唯一必须给定值的参数,而且必须 是有效的SQL Server对象名。 password:新登录帐户的密码。 default_database:新登录帐户访问的默认数据库。 ⑵ SQL Server登录帐户的查看
本节首页
上一页 下一页 返回本章首页
第7章 数据库安全性
混合验证模式有如下特点: – 混合模式允许非Windows客户、Internet 客户和混合的客户组连接到SQL Server中 – 增加了安全性方面的选择
上一页
下一页
返回本章首页
第7章 数据库安全性
7.1.3 设置验证模式
设置验证模式的工作只能由系统管理员来完成。 使用SQL Server企业管理器时,设置或改变验证模式的步骤如下: – ① 运行SQL Server 企业管理器。 – ② 单击“SQL Server 服务器组”及要设置验证模式服务器旁边的+号, 将服务器展开。 – ③ 在服务器的名字上单击右键,然后选择“属性”,系统将弹出 “SQL Server 属性(配置)”窗口。 – ④ 单击“安全性”选项卡,可以看到“安全性”选项卡中包括3个部分: ⑤ 选择一种登录模式,如:“仅 Windows NT”。 – ⑥ 选择一种“审核级别”,如选择审核登录失败的事件,将有助于查 登录失败的原因;选择审核成功登录的事件可以帮助你调试,但却影 响登录的速度。 – ⑦ 设置完成后,单击“确认”,关闭对话窗口。 – ⑧ 重新启动SQL Server以使修改的值生效。
上一页
下一页
返回本章首页
第7章 数据库安全性
7.1.2 混合模式
混合验证模式是指用户登录SQL Server系统时, 其身份验证由Windows NT和 SQL Server共同进行。 使用哪个模式取决于在最初的通信时使用的网络 库.但是对于Windows9x系列的操作系统,只能使用SQL Server验证模式. SQL Server验证模式处理登录的过程为:用户在输 入登录名和密码后, SQL Server在系统注册表中检测输 入的登录名和密码.如果输入的登录名存在,而且密码也 正确,就可以登录到SQL Server上.
7.2.1 系统管理员登录账户
– – – – – – –
创建登录名 配置服务器 创建、删除数据库 无须考虑所有权和权限,可以操作各种数据库对象 本节首页 停止、启动服务器 停止在服务器上运行的无效过程 某些权限只能被系统管理员拥有并且不能被授予其他用户。 这些功能是管理存储空间,管理用户进程及改变数据库选项。
上一页
下一页
返回本章首页
第7章 数据库安全性
例:1.创建登录名为”user01”,没有密码和默认 数据库的用户
EXEC sp_addlogin „user01‟
例: 2.创建用户名为”user02”,密码为”002”,默 认数据库为”XK”的用户
第7章 数据库安全性
第7章 SQL Server的安全性管理 7. 1 SQL Server 2005的验证模式 7. 2 登录管理 7. 3 用户管理 7. 4 角色管理 7. 5 许可管理 综合练习 返回目录
上一页
下一页
返回本章首页
第7章 数据库安全性
数据的安全性是指保护数据以防止因不合法的使用而造 成数据的泄密和破坏.这就要采取一定的安全保护措施.在数据 库中,系统用检查口令等手段来检查用户身份,合法的用户 才能进入数据库系统.当用户对数据库执行操作时,系统自动检 查用户是否有权限执行这些操作. 本章介绍了三方面的知识. 首先介绍了SQL Server的安全性,并且阐述了2种安全模式: N T验证模式和混合模式.接下来解释SQL Server如何管理用户 帐号和用户权限. 在管理用户帐号中,你将会学到创建用户帐号和管理角色 ( r o l e ),创建登录名,用户名和角色; 在管理用户权限中,你也会了解到如何授予用户访问数据 库中的不同对象的权限,及怎样保护数据库中的对象.
第7章 数据库安全性
7.2 登录管理
7.2.1 系统管理员登录账户 7.2.2 用T-SQL语句创建、查看、删除SQL Server 登 录账户 7.2.3 用企业管理器创建、查看、删除SQL Server 登 录账户
本章首页
上一页
下一页
返回本章首页
第7章 数据库安全性
SQL Server有两个默认的系统管理员登录帐户:sa 和 BUILTIN\Administrators。 这两个登录帐户具有SQL Server系统和所有数据库的全部权限。sa是一 个特殊的登录名,它代表混合验证机制下SQL Server的系统管理员,sa始终 关联dbo用户。BUILTIN\Administrators是NT系统的系统管理员组。 具体地说,系统管理员负责下面的工作:
验证阶段(Authentication) 许可确认阶段(Permission Validation) SQL Server和Windows NT/2000是结合在一起的, 因此就产生了两种验证模式。
上一页
下一页
返回本章首页
第7章 数据库安全性
SQL Server的验证模式
验证模式指的是安全方面的问题,每一个用 户要使用SQL Server,都必须经过验证。在安装 过程中,系统会提示选择验证模式。有两种验证 模式: Windows身份验证模式 混合验证模式(Windows身份验证和SQL Server身份 验证)
上一页
下一页
返回本章首页
第7章 数据库安全性
7. 1 SQL Server 2005的验证模式 NT 验证模式 混合安全模式 设置验证模式 SQL Server 系统登录验证过程:P118
7.1.1 7.1.2 7.1.3 7.1.4
本章首页
上一页
下一页
返回本章首页
第7章 数据库安全性
为了实现安全性, SQL Server对用户的访问进行两个阶段的检验:
上一页
下一页
返回本章首页
第7章 数据库安全性
补充:创建Windows用户或组
创建Windows用户或组,就是将Windows中的用户和组映射 为SQL Server的登录帐户。 (1) 使用T-SQL语句创建Windows用户或组 使用系统存储过程sp_grantlogin将使Windows的用户或组 账号映射成SQL Server的登录帐户。sp_grantlogin系统存储 过程的基本语法如下: sp_grantlogin [@loginame =] 'login' 其中login 参数用于指定要添加的 Windows NT 用户或组的名称。 Windows NT 组和用户必须用 Windows NT 域名限定,格式为 “域\用户”,例如 JinlqServer\Jinlq。 【例】 将Windows Server 2000中本地组users映射成SQL Server的登录帐户。 sp_grantlogin [BUILTIN\users]