SQL数据库安全性.docx

上传人:b****4 文档编号:4216692 上传时间:2022-11-28 格式:DOCX 页数:15 大小:226.92KB
下载 相关 举报
SQL数据库安全性.docx_第1页
第1页 / 共15页
SQL数据库安全性.docx_第2页
第2页 / 共15页
SQL数据库安全性.docx_第3页
第3页 / 共15页
SQL数据库安全性.docx_第4页
第4页 / 共15页
SQL数据库安全性.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

SQL数据库安全性.docx

《SQL数据库安全性.docx》由会员分享,可在线阅读,更多相关《SQL数据库安全性.docx(15页珍藏版)》请在冰豆网上搜索。

SQL数据库安全性.docx

SQL数据库安全性

、实验目的

掌握Windows认证模式下数据库用户帐号的建立与取消方法;

二、实验环境

SQLServer企业版三、实验学时

2学时

四、实验原理:

1.Microsoft?

SQLServer?

可以在两种安全(身份验证)模式:

(1)Windows身份验证模式(Windows身份验证)

Windows身份验证模式使用户得以通过MicrosoftWindowsNT?

4.0或Windows?

2000

用户帐户进行连接。

(2)混合模式(Windows身份验证和SQLServer身份验证)

混合模式使用户得以使用Windows身份验证或SQLServer身份验证与SQLServer

实例连接。

在Windows身份验证模式或混合模式下,通过WindowsNT4.0或Windows2000

用户帐户连接的用户可以使用信任连接。

SQLSarver安全性决縈树

戶应用程序

SQLSerwara

 

2.SQLServer的安全机制

SQLServer

(1)服务器级别所包含的安全对象主要有登录名、固定服务器角色等。

其中登录名用于登录数据库服务器,而固定服务器角色用于给登录名赋予相应的服务器权限。

中的登录名主要有两种:

第一种是Windows登录名,第二种是SQLServer登录名。

Windows

登录名对应Windows验证模式,该验证模式所涉及的账户类型主要有Windows本地用户账户、Windows域用户账户、Windows组。

SQLServer登录名对应SQLServer验证模式,在该验证模式下,能够使用的账户类型主要是SQLServer账户。

(2)数据库级别所包含的安全对象主要有用户、角色、应用程序角色、证书、对称密

钥、非对称密钥、程序集、全文目录、DDL事件、架构等。

用户安全对象是用来访问数据库

则该

的。

如果某人只拥有登录名,而没有在相应的数据库中为其创建登录名所对应的用户,

用户只能登录数据库服务器,而不能访问相应的数据库。

(3)架构级别所包含的安全对象主要有表、视图、函数、存储过程、类型、同义词、

聚合函数等。

架构的作用简单地说是将数据库中的所有对象分成不同的集合,这些集合没有

这个默

交集,每一个集合就称为一个架构。

数据库中的每一个用户都会有自己的默认架构。

认架构可以在创建数据库用户时由创建者设定,若不设定则系统默认架构为dbo。

数据库用

户只能对属于自己架构中的数据库对象执行相应的数据操作。

至于操作的权限则由数据库角

色所决定。

一个数据库使用者,想要登录服务器上的SQLServer数据库,并对数据库中的

表执行数据更新操作,则该使用者必须经过如下图所示的安全验证。

3.数据库的存取控制:

授权和撤销权限

(1)GRANT

在安全系统中创建项目,使当前数据库中的用户得以处理当前数据库中的数据或执行特

定的Transact-SQL语句

语法:

1)语句权限:

GRANT{ALL|statement[,…n]}

TOsecurity_account[,…n]

2)对象权限:

GRANT

{ALL[PRIVILEGES]|permission[,…n]}

{

[(column[,…n])]ON{table|view}

|ON{table|view}[(column[,...n])]|ON{stored_procedure|extended_procedure}|ON{user_defined_function}

TOsecurity_account[,...n][WITHGRANTOPTION][AS{group|role}]

(2)REVOKE删除以前在当前数据库内的用户上授予或拒绝的权限。

语法语句权限:

REVOKE{ALL|statement[,...n]}

FROMsecurity_account[,...n]对象权限:

REVOKE[GRANTOPTIONFOR]{ALL[PRIVILEGES]|permission[,...n]}

[(column[,...n])]ON{table|view}

|ON{table|view}[(column[,...n])]

|ON{stored_procedure|extended_procedure}

|ON{user_defined_function}

TO|FROM}

security_account[,...n]

[CASCADE]

[AS{group|role}]

五、实验内容及步骤

以系统管理员身份登录到SQLServer服务器,在SQLServer2005界面中实现以下操作,

并独立写出6—8题的程序代码;

3.

录密码为secret,默认登录数据库为stu;

4.

将帐号zhang添加为数据库stu的用户,用户名为zhang;

在数据库stu中创建用户stu1、stu2和stu3,登录帐号分别为stu1、stu2和stu3;

给数据库用户stu1赋予对sc表进行插入、修改、删除操作权限;

的操作权限,并允许再授权给其他用户;

10.将登录帐号Cheng同时拥有服务器角色serveradmin和securityadmin的权限;

11.删除服务器角色sysadmin的成员stu2和stu3;

六、样例模板

一、用户的创建

服务器用户和数据库用户

u1、u2

Windows,打开“控制面板”(Win7)中的“用户账户”,创建

用户包括操作系统用户、

1.创建操作系统用户以管理员的身份登录到

操作系统用户u1、u2。

2.创建数据服务器用户

(1)GUI方式(SQLServer2008为例):

以DBA的身份登录到SQLServerManagement

Studio,在对象资源管理器中选择“安全性”,右击“登录名”,在弹出的快捷菜单中选择“新

建登录名”菜单选项,在“新建登录名”窗口中单击“搜索”按钮添加Windows用户u1,

选择“Windows身份验证模式”,单击“确定”按钮完成。

(2)命令方式:

usemaster

createlogin[PSYCHE\u1]fromwindows0a数据库A

a耒统站

ijReportServer

[jReportServerTempDB

LJstU-37

BN安全性

曰N登录名

SERVICE\MSSQLSERVERSERVICEXSQLSERVEKAGEF>SYCHE\ulF>SVCHE\u2PSYCHE\u3Psyche\Zangse

53

歯###M&_PoircyEventProce55rnc易PolicyTsqlEKecutimLcANTAUTHORJTV\NETWORK*ANTAUTHOR1P/\SYSTEM圍NT爭nt

A

AA岛

上'制5

上'扩馬属性

rEiEHEVda

连曲

服箝器:

户”

匚』:

•总二七|>;-

此用户用育的飆枸g:

BMs恂

IIjdb_*jcc*ssadiiii方

Jb_b-icL7upnperator

4b_dilv^t4j4r

dba*l«vrbtAF

db_ddli4ii:

nJb_i«iyiil*r*aJcr部■打nW祇"ifiW

数la岸fte成01):

甬邑两员

;□?

dbojcccsEAj^in

db_tickupoptri-tordb_d-iliwfstAt*

dbddl-fediiin

db_djenyiit*readcrter皿亠—y

dbo

(3)同样的方式将操作系统用户u2、u3加入到数据服务器。

3.创建数据库用户

以系统管理员身份登录到数据库服务器,分别以GUI方式和命令方式创建数据库用户

(1)GUI方式(SQLServer2008为例):

选中stu_37数据库,单击“安全性”,在其“用节点下右击,在弹出的快捷菜单中选择

输入要新建的数据库用户名和登录名,单击

(2)命令方式:

usestu37

“新建用户”菜单项,在“数据库用户”窗口中“确定”按钮。

go

createuserstu_37_login03

forlogin[PSYCHE\u3]

go

(3)查看stu_37_login03

的属性,此用户除了拥有默认架构外,没有分配相应权限。

 

上'制5

上'扩馬属性

rEiEHEVda

连曲

服箝器:

匚』:

•总二七|>;-

此用户用育的飆枸g:

BMs恂

IIjdb_*jcc*ssadiiii

Jb_b-icL7upnperator

4b_dilv^t4j4r

dba*l«vrbtAF

db_ddli4ii:

nJb_i«iyiil*r*aJcr部■打nW祇"ifiW

数la岸fte成01):

dbo

 

甬邑两员

;□?

dbojcccsEAj^in

db_tickupoptri-tordb_d-iliwfstAt*dbddl-fediiindb_djenyiit*readcrter皿亠—y

(4)切换到操作系统用户u1,以u1的身份登录到SQLServerManagementStudio,

这时可以使用命令打开数据库stu37。

如下图:

/tQLQueryl.iql-(lo„7(Psyche\u1(53))*!

use3C-37

go

usestu37go

 

sp_addrolemember

'dbowner'

'stu_37_login01'

zSQLQueryl-sql-Clo~7fPsyche\u1(55))*

use3tu57

go

sp_addroleiEeiEi:

er*db_owner*.'stLi_37_logi:

:

01'

能消息

命令已成功完成0

A,

①查谊已咸…(local)(10.0RTM)Psyche\Ll[53],stu_3700:

00:

000行

此时,可以访问数据库的数据库对象,如下图:

曰活■(SQLServer10.0.1600-Piyche\tJl)a曰ea轴库

回3篆畑娠韋

E二歡握库挟黑

HJJReportserver

(3ReportServerTerrpD6

0stu,37

i)口城库烁0

回魏£表

S

1+)

Q

0

dbo.Q

dbo.sdbo.scdbo.iclldIm.4^37

回二i视圏

0匸同义词

E二可躺牝

11]LJServiceBroker0=荐犒

二.-h-41—

SQLQueryl.sql-(lo...7fP&yche\u1(SS}}*

flclect-fromj

snsme

sseK

sage

sdept4

1

j10M330001

i刘炼

B

23

2

106033000?

'丁®

22

3

10M33000S

24

4

1DM350004

21

5

IDMiiOOOS

胡海熱

22

信管

6

1DM330007

伺强

23

7

1DM3J0003

何荊捕

22

9

iDMiaooro

李晓飞

1hHnJI.

23

信管”

◎直仮已-1(local)'(10-0RTM)

PsycheXul(53)|stuj?

|OOjOOiOO|14Gij

□结果亠肖慝

切换到DBA,取消stu_37_loginO1的所有的角色,此时只能打开数据库,而不能访问数据库对象

三、数据库的权限管理

 

/^QLQueryl.tql-(lo^r(Psychc\u2(SS))*[use3CV37

go

4涓讯

消息*,级别11,状态H雪1行

服务器主怵-PSYCHZXu2^'无法在当前安全上下文下访问数抿库”*J3严。

I(IdCai)(10.0RTM)|Psyche\u2(55)|maiter|00:

00:

000行

此用RSWiSSffl):

Iffl有吊踝恂

iBBUBL.

Qjdl_Atc*=tidfvn

Idlj—'b'BcLnip口pgr^ltor

I—t'lld/ilu*沁dj4r

dl亠ddfd.blAtAfed«r■I'b.djUi^d.Lturilur

埶《库曲色战贯se)w):

rsyclw^ZaiiCsr

iD

1~'

dlj—HcLnip口purler

i~'

d.'b_d.-il-ufAi.d4r

Wr

■ll_ddl6df^iii

dl_d4血Fd.bturi-tdjor

■I'b^djUiT^d.bturilur

m

Hl.

3.

SQLQueryl^sql-Clo„7(Psyche\ultSJ))*

iiiaesm3,

go

gr^ntselect,delateon孚toFty_3字】QffinOi

为结果I

命警已咸功完成*

切换到用户u1,为用户u2分配访问权限

Eu岸税蔭

田IJReportSerwer

0ijReportServerTtmpDB

03stij_37

E□库矢盂圏

BLa表

mLj祝s

B口同Ji词

回□可謔世

ENServiceBroker

BEJ啓

gR宝全性

u3用户〔Adba[应guest盛INFORM冉no忆HUEastu_37_lo9irt(}lL氐stu_37_logiti02L巻stu_37_lDgi'rtO3

ffla角色

W一J果构

4.切换到用户u2,可以看到学生表s对用户u2可见

曰0-(SQLServer1O'0.15Q0-Psyche\u2)a

laQ泵咖据库

IB匸i琳库快照

QReportServer

ijR亡portServerTempDB

Qstu_37

ffi口数居库芫矣图

Qm表

a

B3dbo.s

B口列a凝国口釣耒aca脏发器

ISEa索弓

3i:

J统计信息

cfiMEl

5.执行访问的权限

/^LQueryrsql-(Io..J(Psyche\u2(SS))*}

 

<

E]结果Jj消息I

ega

3

管管管V管管管管管V管信信信値信信信信信値信

sno

sname

W5flS3iH}01

1刘炼

WM33WW2

TS

10旳3泗1

陈勇

1Q&03300W

余ffl

曲&03测5

胡海

讨强

W50SSDDDE

何楠楠

李晓飞

1OW33W11

蔡盼盼

10&0330013

谕四超

1O&O33MH

陈昌钦

2

6

7

3

10

11

男女男女女男女女宏舅男

 

a查询已成功执行。

[local][10.0RTM)P5yche\u2[55]5tu_3700:

00:

00149行

6.执行未授权的权限

updatessetsage=30wheresname='丁蕾'

go/^LQueryl.iql-tlo...7(Psychc\u2(SS)}*]

update3set鹘鏗=30where宓屈鵰='丁蕾'

go

Sj消息

消息仝可级别14,状烹瓦-第=行

拒垂了对对衾’『擞提阵'Stu37^,架构3『啲咤4权限。

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

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1