作者:小卢(数据库专业毕业) 日期:2013-09-30 原文地址:http://www.skywj.com/thread-9107-1-1.html
l 场景
了解SQL Server2008包括的可配置安全功能,通过这些功能,用户可根据所需定制自己的安全策略以实现安全防御。 Ø 查询安全对象的权限 Ø 设置SQL Server身份验证模式 Ø 使用密码策略 Ø 管理登录名 Ø 管理凭据
l 要求:根据实验内容完成实验以熟悉知识的应用。
本实验的主要任务及执行步骤如下:
1、 使用T-SQL语句查询服务器级别主体的目录视图。
select * from sys.server_permissions ![](http://image15.poco.cn/mypoco/myphoto/20130930/14/174392048201309301413523344156405473_028.jpg)
2、 使用T-SQL语句查询数据库级别主体的目录视图。
select * from sys.database_permissions ![](http://image15.poco.cn/mypoco/myphoto/20130930/14/174392048201309301413523344156405473_027.jpg)
3、 使用fn_my_permissions函数分别列出服务器(默认服务器)、数据库(AdventureWorks)和表(Person.Address)的有效权限。
select * from fn_my_permissions (NULL, 'SERVER')
![](http://image15.poco.cn/mypoco/myphoto/20130930/14/174392048201309301413523344156405473_029.jpg)
USE AdventureWorks; GO SELECT * FROM fn_my_permissions (NULL, 'DATABASE');
![](http://image15.poco.cn/mypoco/myphoto/20130930/14/174392048201309301413523344156405473_026.jpg)
USE AdventureWorks; GO SELECT * FROM fn_my_permissions('Person.Address', 'OBJECT')
![](http://image15.poco.cn/mypoco/myphoto/20130930/14/174392048201309301413523344156405473_025.jpg)
4、 使用SSMS设置SQL Server验证模式的步骤和相关界面
(1)打开SSMS (2)右击属性 ,点击安全性
![](http://image15.poco.cn/mypoco/myphoto/20130930/14/174392048201309301413523344156405473_024.jpg)
5、 使用SSMS创建登录名login1_学号,密码自设,并启用密码策略验证密码的复杂性。
![](http://image15.poco.cn/mypoco/myphoto/20130930/14/174392048201309301413523344156405473_023.jpg)
![](http://image15.poco.cn/mypoco/myphoto/20130930/14/174392048201309301413523344156405473_022.jpg)
6、 使用SSMS创建凭据pj1_学号,标识为windows系统管理员,密码自设。
![](http://image15.poco.cn/mypoco/myphoto/20130930/14/174392048201309301413523344156405473_021.jpg)
![](http://image15.poco.cn/mypoco/myphoto/20130930/14/174392048201309301413523344156405473_020.jpg)
7、 使用T-SQL语句创建凭据pj2_学号,标识为windows系统管理员,密码自设。
CREATE CREDENTIAL pj2_19 WITH IDENTITY = 'st46\Administrator', SECRET = 'DSL12DSL12';
![](http://image15.poco.cn/mypoco/myphoto/20130930/14/174392048201309301413523344156405473_019.jpg)
8、 使用T-SQL语句创建映射到pj1_学号凭据的登录名login2_学号,密码自设并且
create login login2_19 with password='DSL12DSL12', credential=pj1_19
![](http://image15.poco.cn/mypoco/myphoto/20130930/14/174392048201309301413523344156405473_018.jpg)
9、 使用T-SQL语句把第5题创建的登录名login1_学号改为NewLogin1_学号,同时把密码重设。
ALTER LOGIN login1_19 WITH NAME = NewLogin1_19;
![](http://image15.poco.cn/mypoco/myphoto/20130930/14/174392048201309301413523344156405473_017.jpg)
ALTER LOGIN NewLogin1_19 WITH PASSWORD = 'DSL123DSL';
![](http://image15.poco.cn/mypoco/myphoto/20130930/14/174392048201309301413523344156405473_016.jpg)
10、 使用T-SQL语句执行以下操作,体验数据库用户和登录名对数据库的访问权限 --创建登录名login1和login2,密码为123456
create login login1 with password='123456' create login login2 with password='123456'
![](http://image15.poco.cn/mypoco/myphoto/20130930/14/174392048201309301413523344156405473_015.jpg)
--创建数据库DB1和DB2并在DB1中创建架构mySchema1和在DB2中创建mySchema2
create database DB1 create database DB2
![](http://image15.poco.cn/mypoco/myphoto/20130930/14/174392048201309301413523344156405473_014.jpg)
create database DB1 create database DB2 use DB1 GO create schema [mySchema1] authorization [dbo] GO use DB2 GO create schema [mySchema2] authorization [dbo] GO
![](http://image15.poco.cn/mypoco/myphoto/20130930/14/174392048201309301413523344156405473_013.jpg)
![](http://image15.poco.cn/mypoco/myphoto/20130930/14/174392048201309301413523344156405473_012.jpg)
--分别在上述DB1和DB2中创建数据库用户user1和user2,使用默认架构mySchema,其中user1用户映射的登录名login1,user2用户映射的登录名login2
use DB1 CREATE user use1 for login login1 with default_schema=mySchema1 use DB2 CREATE user use2 for login login2 with default_schema=mySchema2
![](http://image15.poco.cn/mypoco/myphoto/20130930/14/174392048201309301413523344156405473_011.jpg)
![](http://image15.poco.cn/mypoco/myphoto/20130930/14/174392048201309301413523344156405473_010.jpg)
--分别用login1和login2进行登录访问数据库DB1和DB2
![](http://image15.poco.cn/mypoco/myphoto/20130930/14/174392048201309301413523344156405473_007.jpg)
![](http://image15.poco.cn/mypoco/myphoto/20130930/14/174392048201309301413523344156405473_008.jpg)
![](http://image15.poco.cn/mypoco/myphoto/20130930/14/174392048201309301413523344156405473_009.jpg)
![](http://image15.poco.cn/mypoco/myphoto/20130930/14/174392048201309301413523344156405473_006.jpg)
--验证login1是否只能访问数据库DB1,login2只能访问数据库DB2 ![](http://image15.poco.cn/mypoco/myphoto/20130930/14/174392048201309301413523344156405473_005.jpg)
![](http://image15.poco.cn/mypoco/myphoto/20130930/14/174392048201309301413523344156405473_004.jpg)
![](http://image15.poco.cn/mypoco/myphoto/20130930/14/174392048201309301413523344156405473_002.jpg)
![](http://image15.poco.cn/mypoco/myphoto/20130930/14/174392048201309301413523344156405473_003.jpg)
11、 把user1的用户名更改为newUser1,原来的默认架构mySchema改为mySchema1 alter user use1 with name=newUser1,default_schema=mySchema1
![](http://image15.poco.cn/mypoco/myphoto/20130930/14/174392048201309301413523344156405473_001.jpg)
![](http://image15.poco.cn/mypoco/myphoto/20130930/14/174392048201309301413523344156405473_000.jpg)
持续更新中·~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|