SQLServer数据库安全配置规范
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
SQLServer数据库安全配置规范
1.概述
1.1. 目的
本规范明确了SQL Server数据库安全配置方面的基本要求。
为了提高SQL Server数据库的安全性而提出的。
1.2. 范围
本规范适用于XXXX使用的SQL Server数据库版本。
2.配置标准
2.1. 补丁
2.1.1.安装数据库最新补丁
【目的和操作】连接微软SQLServer网站,获得各个最新的补丁包和补丁集合。
2.2. 网络配置
2.2.1.隐藏服务器
【目的和操作】在企业管理器中选择数据库服务器的属性,网络配置,TCP/IP 属性,选中其中的“隐藏服务器”选项。
该操作可以通过设置IPSE策略过滤UDP1434端口完成。
2.2.2.去掉不必要的协议
【目的和操作】默认情况下,SQLSERVER同时安装TCP/IP和管道,在企业管理器中选择数据库服务器的属性,网络配置,删除管道。
【影响】首先确认用户或者应用程序不使用管道来通讯。
只使用Windows进行身份验证并需要远程维护必须使用管道。
2.2.
3.改变默认通信端口
【目的和操作】在企业管理器中选择数据库服务器的属性,网络配置,TCP/IP 属性,默认情况下是TCP 1433端口,请修改该端口为新的端口。
再使用Windows的IPSEC安全策略,禁止非允许的IP地址访问此端口。
【影响】影响使用默认端口的远程访问,要求用户先确认不影响其他操作。
2.2.4.使用通讯协议加密
【目的和操作】使用SSL加密协议。
【影响】影响使用默认端口的远程访问,要求用户先确认不影响其他操作。
2.2.5.网络连接访问控制
【目的】在操作系统或者相应的网络设备上设置网络访问控制
【具体配置】
1、禁止非数据库应用系统IP连接UDP1434、TCP1433(或者修改后的通
讯端口)的连接
2、禁止非数据库应用系统IP连接TCP445/139端口的连接。
【影响】根据需要选择。
会影响普通的数据库连接。
2.3. 审核设置
2.3.1.设置审核级别
【目的】设置SQL Server的审核选项。
【具体配置】
展开一个服务器组。
右击一个服务器,再单击"属性"。
在"安全性"选项卡
的"身份验证"下,在"审核级别"中选择在 SQL Server 错误日志中记录的用
户访问 Microsoft® SQL Server™的级别:"全部"表示审核成功的和失败的
登录尝试。
2.3.2.设置日志目录权限
【目的】限制日志目录的权限,防止对日志目录的非授权访问。
【具体配置】
日志通常保留在:SQL Server安装目录\MSSQL\LOG\
设置目录权限为:administrator, system(完全控制),如果有服务账号,
也加上服务账号的权限。
【影响】
如果SQL Server服务不是以localsystem而是以其他账号运行,那么也设置
该账号有完全控制的权限
2.4. 帐号安全
2.4.1.设置身份认证
【目的】恰当设置SQL Server的验证选项。
【具体配置】
展开一个服务器组。
右击一个服务器,再单击"属性"。
在"安全性"选项卡
的"身份验证"下,单击"仅 Windows"。
【影响】
仅WINDOWS方式安全性高,但是将不能使用数据库账号进行登录和连
接。
确认后才能实施。
2.4.2.加强用户口令
【目的】加强数据库用户口令的强度。
【具体配置】
修改目前所有账号的口令,确认为强口令。
特别是sa 账号,需要设置至少
10位的强口令。
2.4.
3.删除多余帐号
【目的】确认目前使用的帐号,删除无用帐号。
2.5. 数据库目录保护
2.5.1.数据库目录权限设置
【目的】加强数据库目录的权限管理。
【具体配置】
设置整个数据库的安装数据库目录(比如:C:\SQLServer)的权限:
设置目录权限为:administrator, system(完全控制),如果有服务账号,
也加上服务账号的权限。
2.6. 管理扩展存储过程
【目的】加强存储过程的安全管理。
【具体配置】
首先确认下面的扩展存储过程不会被使用,然后删除下面的这些存储过
程。
去掉xp_cmdshell扩展存储过程,使用:
use master
sp_dropextendedproc 'xp_cmdshell'
同上类似语句,删除以下的扩展存储过程:
Sp_OACreate、Sp_OADestroy、Sp_OAGetErrorInfo
Sp_OAGetProperty、Sp_OAMethod、Sp_OASetProperty
Sp_OAStop
Xp_regaddmultistring
Xp_regdeletekey、Xp_regdeletevalue
Xp_regenumvalues
Xp_regremovemultistring、Xp_sdidebug、xp_availablemedia、
xp_cmdshell、xp_deletemail、xp_dirtree、xp_dropwebtask
xp_dsninfo、xp_enumdsn、xp_enumerrorlogs
xp_enumgroups、xp_enumqueuedtasks、xp_eventlog
xp_findnextmsg、xp_fixeddrives、xp_getfiledetails
xp_getnetname、xp_grantlogin、xp_logevent
xp_loginconfig、xp_logininfo、xp_makewebtask
xp_msverxp_perfend、xp_perfmonitor
xp_perfsample、xp_perfstart、xp_readerrorlog
xp_readmail、xp_revokelogin、xp_runwebtask
xp_schedulersignal、xp_sendmail、xp_servicecontrol
xp_snmp_getstate、xp_snmp_raisetrap、xp_sprintf
xp_sqlinventory、xp_sqlregister
xp_sqltrace、xp_sscanf、xp_startmail
xp_stopmail、xp_subdirs、xp_unc_to_drive、xp_dirtree
2.7. 其他设置
2.7.1.降低SQLServer服务的运行权限
【目的】SQL Server服务不以localsystem而是以其他系统账号运行。
【具体配置】
可以在系统中新创建一个users组的账号,在sqlserver“服务”属性中,以该账号运行。
【影响】可能造成某些功能失效。