sql server数据库安全机制

sql server数据库安全机制

ID:6129248

大小:123.32 KB

页数:5页

时间:2018-01-04

sql server数据库安全机制_第1页
sql server数据库安全机制_第2页
sql server数据库安全机制_第3页
sql server数据库安全机制_第4页
sql server数据库安全机制_第5页
资源描述:

《sql server数据库安全机制》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、SQLServer数据库安全机制一SQLServer数据库SQLServer数据库是微软公司的一款关系型数据库系统。它专门为分布式客户机/服务器计算所设计的一个出众的数据库管理平台。它的优势是可扩展性,高性能管理,支持堆成多处理结构,ODBC和存储过程,强壮的事物处理能力,支持SQL语句。其中SQL语句可以执行如从数据库中提取数据,更新、删除数据库中的数据等等各种各样的操作,可以用来完成几乎所有的数据库操作。二、数据库的安全机制数据库的安全性是指保护数据库避免不合法的使用,以免数据的泄漏、更改或破坏。数据库安全机制是多层次,具体可以划分为用户、数据库管理系统(DBMS)、操作系统(O

2、S)、数据库(DB)四个层次。对于用户部分的安全机制采用身份认证方法;数据库管理系统则是通过访问控制保证资料安全性和审计实时监视和记录用户的行为,任何一个用户意图控制一个对象都必须拥有相应的授权同时用户的行为也将被监视和记录;在操作系统级的安全控制主要侧重于文件权限保护,系统资源使用限制;在数据库存储这一级目前大多采用加密技术,对数据进行加密,在数据传输时可以对数据协议进行加密,为了防止数据库意外破坏,有备份恢复策略。(一)用户层次数据库用户名是连接数据库、存取数据库对象的主体标记,是数据库中管理权限和控制数据访问的一种安全措施,用户认证就是确定所要求的用户身份的正确性,口令识别是数

3、据库身份认证中最常用的方式。对于身份验证模式,SQLServer提供了两种认证方式:Windows身份验证和SQLServer身份验证。Windows身份验证模式,即使用Windows中的其中一个用户登录到SQLServer数据库中。SQLServer身份验证即使用创建用来登陆数据库的身份进行验证。而在远程以WEB形式登陆数据库的时候,同样要进行身份识别。SQL注入攻击是黑客最常见的攻击数据库的手段。SQL注入攻击是攻击者把SQL语句插入到Web表单的输入域或页面请求查询字符串中,欺骗服务器执行恶意SQL语句的操作。防治SQL注入的方法:1.把用户验证的SQL语句构造到存储过程中是行

4、之有效的方法,例如构建存储过程,只有用户名正确和密码正确才能够登陆,同时将输入的数据使用Cast()函数转换成一个整体进行验证。CreateProcedureProcIsUserValid@UserNameVarchar(32),@PasswordVarchar(32)AsSelectCount(*)fromUsersWhereCast(UserNameAsVarchar(32))=Cast(@UserNameAsVarchar(32))AndCast(PasswordAsVarbinary)=Cast(@PasswordAsVarbinary)Go2.对输入的验证信息进行严格的格式

5、审查,排查字符”or”,”and”,”=”等,一旦遇到,可以拒绝登陆。(二)数据库管理系统层次主要包括访问控制、数据库审计、视图机制(1)访问控制数据库访问控制(accesscontrol)是对用户访问数据库各种对象(包括表、视图、目录、应用等)的权限(包括创建、撤销、查询、增加、删除、修改、执行等)的控制,可以通过用户分类和数据分类实现。访问控制是数据库安全系统中的核心技术,主要包括系统授权、确定访问权限和实施权限三个部分,是数据库管理系统最有效的安全手段。基于角色的权限管理可以有效的对用户进行权限管理。如下例子所示:USEclass--创建角色r_testEXECsp_addro

6、le'r_test'--授予r_test对Student表的所有权限GRANTselect,delete,updateONStudentTOr_test--授予角色r_test对Course表的SELECT权限GRANTSELECTONCourseTOr_test--添加登录l_test,设置密码为123,默认数据库为classEXECsp_addlogin'l_test','123','class'--为登录l_test在数据库class中添加安全账户u_testEXECsp_grantdbaccess'l_test','u_test'--添加u_test为角色r_test的成员E

7、XECsp_addrolemember'r_test','u_test'--拒绝安全账户u_test对Course表的SELECT权限DENYSELECTONCourseTOu_test执行命令,用l_test登陆数据库,能够看到角色r_test和用户u_test,如图一所示,可以对Student表进行所有操作,如图二和图三:但无法对Course表查询,虽然角色r_test有Course表的select权限,但已经在安全账户中明确拒绝了对Course的se

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。