sqlserver数据库安全配置规范
- 格式:docx
- 大小:32.22 KB
- 文档页数:11
大多数服务及其属性可通过使用SQL Server 配置管理器进行配置。
以下是在C 盘安装Windows 的情况下最新的四个版本的路径。
安装的服务SQL Server根据您决定安装的组件,SQL Server 安装程序将安装以下服务:∙SQL Server Database Services - 用于SQL Server 关系数据库引擎的服务。
可执行文件为<MSSQLPATH>\MSSQL\Binn\sqlservr.exe。
∙SQL Server 代理 - 执行作业、监视SQL Server、激发警报以及允许自动执行某些管理任务。
SQL Server 代理服务在SQL Server Express 的实例上存在,但处于禁用状态。
可执行文件为<MSSQLPATH>\MSSQL\Binn\sqlagent.exe。
∙Analysis Services - 为商业智能应用程序提供联机分析处理(OLAP) 和数据挖掘功能。
可执行文件为<MSSQLPATH>\OLAP\Bin\msmdsrv.exe。
∙Reporting Services - 管理、执行、创建、计划和传递报表。
可执行文件为<MSSQLPATH>\ReportingServices\ReportServer\Bin\ReportingServicesService.exe。
∙Integration Services - 为Integration Services 包的存储和执行提供管理支持。
可执行文件的路径是<MSSQLPATH>\130\DTS\Binn\MsDtsSrvr.exe ∙SQL Server Browser - 向客户端计算机提供SQL Server 连接信息的名称解析服务。
可执行文件的路径为c:\Program Files (x86)\Microsoft SQLServer\90\Shared\sqlbrowser.exe∙全文搜索 - 对结构化和半结构化数据的内容和属性快速创建全文索引,从而为SQL Server 提供文档筛选和断字功能。
SQL Server 2012 标准版是微软推出的一款企业级关系型数据库管理系统。
它具有强大的性能、可靠的安全性和丰富的功能,适用于中小型企业及个人开发者。
本文将从以下几个方面详细介绍SQL Server 2012 标准版的特点、功能和优势。
一、性能SQL Server 2012 标准版拥有出色的性能表现,能够处理大规模数据,并支持高并发访问。
其优化的查询处理引擎和多线程并行处理技术,使得数据库的读写操作更为高效。
SQL Server 2012 标准版还支持数据分区和分布式处理,可以更好地应对数据量大、访问频繁的环境。
二、安全性SQL Server 2012 标准版提供了多层次的安全保障机制,包括对数据的加密、访问控制、审计和身份验证等功能。
数据加密能够有效保护数据的机密性,而访问控制则可以限制用户对数据库的操作权限。
SQL Server 2012 标准版还支持详细的审计功能,能够记录用户的操作和访问情况,有助于发现潜在的安全问题。
三、功能丰富SQL Server 2012 标准版拥有丰富的功能模块,包括数据存储、数据分析、数据管理和数据安全等方面。
其中,数据存储模块支持多种数据类型和数据结构,能够满足复杂数据处理的需求。
数据分析模块提供了强大的分析工具和报表功能,帮助用户快速获取数据洞察。
数据管理模块包括数据库备份、恢复、性能优化等功能,可有效管理数据库的运行状态。
数据安全模块提供了全面的安全性保护,保障数据库的稳定运行。
四、易用性SQL Server 2012 标准版注重用户体验,提供了直观简洁的管理界面和丰富的操作指南。
用户可以通过图形化界面进行数据库的管理和配置,无需深入了解复杂的命令语法和配置参数。
SQL Server 2012 标准版还支持多种编程语言和开发工具,为开发者提供了便利和灵活的开发环境。
五、成本效益SQL Server 2012 标准版不仅具有强大的功能和性能,同时也具有成本效益优势。
SQL Server是微软公司的一款关系数据库管理系统,广泛用于企业级应用程序和全球信息站开发中。
2004年,SQL Server出现了一个安全漏洞,CVE编号为CVE-2004-2761。
该漏洞允许攻击者通过精心构造的SQL查询来执行未经授权的数据库操作,可能导致数据泄露、数据库瘫痪,甚至服务器被入侵。
以下是对该漏洞的详细解读:一、漏洞描述CVE-2004-2761是SQL Server的一个认证绕过漏洞。
在受影响的SQL Server版本中,当用户尝试使用FTP或HTTP上传文件时,攻击者可以通过夹带特定的SQL查询,绕过认证机制实现未经授权的数据库操作。
这种漏洞的存在可能会严重影响服务器的安全性和稳定性。
二、受影响的版本CVE-2004-2761影响的SQL Server版本包括但不限于:- Microsoft SQL Server 7.0- Microsoft SQL Server 2000- Microsoft SQL Server 2005- Microsoft SQL Server 2008三、攻击方式攻击者可以利用CVE-2004-2761漏洞,构造恶意的SQL查询,并将其夹带在FTP或HTTP上传的文件中。
当服务器接收到这些文件并解析时,恶意的SQL查询将被执行,从而导致数据库操作的未经授权执行。
四、潜在威胁CVE-2004-2761漏洞的潜在威胁包括但不限于:- 数据泄露:攻击者可以利用漏洞来获取数据库中的敏感信息,如用户账户、密码等。
- 数据库瘫痪:攻击者可能执行恶意操作导致数据库瘫痪,影响正常的业务操作。
- 服务器入侵:利用漏洞进行未经授权的数据库操作,最终可能导致服务器被入侵控制。
五、解决方案针对CVE-2004-2761漏洞,建议采取以下解决方案:1. 及时安装补丁:微软公司已发布针对该漏洞的安全补丁,建议及时对受影响的SQL Server版本进行升级和更新补丁。
2. 进行安全配置:对SQL Server进行安全配置,限制用户权限,避免恶意SQL查询的执行。
SqlServer2005 数据库同步配置图文详解<1>软件准备条件 机器A端:SqlServer2005 Management Studio + WinServer 2003 Enterprise (作为发布服务器) 机器B端:Sqlserver2005 Management Studio Express + WinXP(作为订阅服务器) 一:【准备条件】 <1>软件准备条件 机器A端:SqlServer2005 Management Studio + WinServer 2003 Enterprise (作为发布服务器) 机器B端:Sqlserver2005 Management Studio Express + WinXP(作为订阅服务器) (可以用别的,不过订阅服务器版本不得高于发布服务器版本) <2>数据库复制准备条件 1. 所有被同步的数据表尽量要用主键,如果没有主键也没有关系,SqlServer会提示为表自动生成主键,如图 2. 发布服务器、分发服务器和订阅服务器必须使用计算机名称来进行SQLSERVER服务器的注册。
3. SQLSERVER必需启动代理服务,且代理服务必须以本地计算机的帐号运行。
不得使用IP地址以及别名进行注册,比如LOCAL, “.”以及LOCALHOST等。
如果非同一网段或者远程服务器,或者只能用IP,不能用计算机名的,为对方注册服务器别名。
将其对应关系加到本地系统网络配置文件中。
文件的具体位置在C:\Windows\system32\drivers\etc\hosts 配置方式: 用记事本打开hosts 文件,在文件的最下方添加IP 地址和主机名的对应关系。
如图: 4.SqlServer 必需启动代理服务,且代理服务必需以本地计算机的帐号运行。
5.发布服务器和订阅服务器都要设置MSDTC ,允许网络访问控制面板--->管理工具--->组件服务--->计算机--->我的电脑(Win7继续找 -->Distributed Transaction Coordinator--->本地DTC),右键属性,找到MSDTC 选项卡,点击安全设置,按如下设置即可 )教党 确定,重启MSDTC服务。
配置SQLServer,允许远程连接需要别人远程你的数据库,首先需要的是在一个局域网内,或者连接的是同一个路由器,接下来就是具体步骤:(一)首先是要检查SQLServer数据库服务器中是否允许远程链接。
其具体操作为:(1)打开数据库,用本地帐户登录,右击第一个选项,选择属性:(2)在打开的属性窗口,在其右边点击“连接”,然后再左侧勾上“允许远程连接到此服务器”::(二)为微软SQL服务器(MSSQLServer)配置相应协议。
(1)依次选择:开始-〉所有程序-〉Microsoft SQL Server 2008-〉配置工具-〉SQL Server 配置管理器,如下图所示:(2)打开SQL Server配置管理器后,选择SQL Server网络配置下面的MSSQLSERVER,然后看右边里面的TCP/IP是否为“已启用”,如下图所示:(三)检查SQL服务器防火墙设置(快捷步骤-直接关闭防火墙(不安全))(1)在进行完上两步操作后,用户需要做的是对SQL服务器防火墙进行重新配置。
在进行这一步操作时,首先找到SQL服务器上那个端口支持TCP/IP协议。
用户可以在SQL服务器防火墙已经处于运行状态下,右击“TCP/IP协议”选择“属性”:从上图中我们可以看出,这台SQL服务器上支持TCP/IP协议的是1433端口。
下一步要做的是在防火墙的配置中允许1433端口支持TCP/IP协议即可。
如果服务器上运行的是Windows 7操作系统,其配置步骤为(其他微软操作系统的做法类似),打开“控制面板”选择“Windows 防火墙”选项,然后点击高级选项,如下图所示:(2)选择“高级设置”后,在右边菜单栏中找出“具有高级安全选项的Windows防火墙”并将其打开。
打开后会发现在左边菜单栏中有“入站规则(Inboud Rules)”选项。
将该选项打开,并在右边菜单栏中选择“新建规则(New Rule)”选项:(3)打开“新建规则”选项后,利用“新内置绑定规则向导”为1433端口配置“内部绑定协议”配置为适用于TCP/IP协议即可。
SQL Server中文参考手册一、介绍SQL Server是微软公司开发的一款关系型数据库管理系统,常用于企业级应用程序的开发和数据管理。
它具有强大的数据处理和管理能力,能够支撑大型的数据量和复杂的业务逻辑。
本文将针对SQL Server的中文参考手册进行详细介绍,帮助读者理解和使用SQL Server的各项功能。
二、安装与配置1. 下载与安装在微软全球信息站上可以找到SQL Server的安装程序,根据自己的需求选择相应的版本进行下载。
安装过程中,可以根据向导逐步进行配置,包括选择安装目录、设置数据库引擎配置、配置实例等。
2. 服务设置安装完成后,需要对SQL Server的各项服务进行设置,包括SQL Server数据库引擎服务、SQL Server代理服务等。
可以通过“SQL Server配置管理器”进行相关设置。
三、数据库设计与管理1. 数据库设计SQL Server支持基于数据库模型进行设计,包括创建表、定义字段、设置键与索引等。
可以使用SQL Server Management Studio (SSMS)进行数据库设计。
2. 数据库管理SQL Server提供了丰富的数据库管理功能,包括备份与还原、数据库迁移、容灾与恢复等。
通过SSMS可以轻松进行数据库的管理操作。
四、数据查询与处理1. SQL语法SQL Server支持标准的SQL语法,包括SELECT、INSERT、UPDATE、DELETE等操作。
还支持存储过程、触发器、函数等高级特性。
2. 查询优化SQL Server提供了查询优化器,可以对查询语句进行优化,提高查询效率。
通过执行计划或查询分析工具,可以对查询进行性能分析。
五、安全与权限管理1. 登入与用户SQL Server允许创建多个登入账号,并且可以为不同的数据库设置不同的用户权限。
通过SQL Server安全性功能可以进行相关设置。
2. 数据加密SQL Server支持数据加密功能,可以对敏感数据进行加密保护。
大多数服务及其属性可通过使用SQLServer配置管理器进行配置。
以下是在C盘安装Windows 的情况下最新的四个版本的路径。
安装的服务SQLServer根据您决定安装的组件,SQLServer安装程序将安装以下服务:•SQLServerDatabaseServices-用于SQLServer关系数据库引擎的服务。
可执行文件为<MSSQLPATH>\MSSQL\Binn\sqlservr.exe。
•SQLServer代理-执行作业、监视SQLServer、激发警报以及允许自动执行某些管理任务。
SQLServer代理服务在SQLServerExpress的实例上存在,但处于禁用状态。
可执行文件为<MSSQLPATH>\MSSQL\Binn\sqlagent.exe。
•AnalysisServices-为商业智能应用程序提供联机分析处理(OLAP)和数据挖掘功能。
可执行文件为<MSSQLPATH>\OLAP\Bin\msmdsrv.exe。
•ReportingServices-管理、执行、创建、计划和传递报表。
可执行文件为<MSSQLPATH>\ReportingServices\ReportServer\Bin\ReportingServicesService.exe。
•IntegrationServices-为IntegrationServices包的存储和执行提供管理支持。
可执行文件的路径是<MSSQLPATH>\130\DTS\Binn\MsDtsSrvr.exe•SQLServerBrowser-向客户端计算机提供SQLServer连接信息的名称解析服务。
可执行文件的路径为c:\ProgramFiles(x86)\MicrosoftSQLServer\90\Shared\sqlbrowser.exe •全文搜索-对结构化和半结构化数据的内容和属性快速创建全文索引,从而为SQLServer 提供文档筛选和断字功能。
sql2019标准版一、简介SQLServer2019标准版是微软公司推出的一款关系型数据库管理系统,适用于各种规模的企业,提供高效的数据处理、存储和管理功能。
二、主要功能1.高性能处理能力:SQLServer2019标准版支持大规模数据集的处理,能够快速响应并发请求,提高系统性能。
2.安全性保障:提供全面的数据安全保护机制,包括身份验证、访问控制、数据加密等,确保数据安全可靠。
3.可靠性保证:系统设计遵循高可用性原则,采用容错技术和备份策略,确保数据不丢失、系统不中断。
4.灵活的数据管理:支持多种数据管理模式,包括表分区、数据复制、索引优化等,提高数据管理效率和灵活性。
5.集成开发环境:提供丰富的开发工具和API,方便与其他系统进行集成,实现数据共享和交换。
三、新特性与改进1.性能优化:SQLServer2019标准版在性能方面进行了全面优化,包括查询优化、内存管理、磁盘I/O等方面,提高了系统的处理能力和响应速度。
2.数据分析增强:支持更多数据分析功能,包括数据挖掘、机器学习、可视化展示等,为企业提供更丰富、更深入的数据分析能力。
3.云原生支持:支持与云平台集成,方便将数据库部署在云环境中,实现资源的灵活分配和动态扩展。
4.数据库恢复改进:改进了数据库恢复功能,提供了更快速、更可靠的数据恢复手段,保障数据安全。
四、安装与配置1.安装环境:支持多种操作系统,如Windows、Linux等,建议使用64位系统,确保系统资源充分利用。
2.安装过程:提供图形化安装界面和安装向导,方便用户进行安装和配置。
3.数据库配置:根据实际需求进行数据库参数配置,包括内存使用、磁盘空间、并发用户数等。
4.备份与恢复:掌握备份与恢复技巧,确保数据安全可靠。
五、常见问题及解决方案1.查询性能低下:可能原因包括索引不合理、查询语句写错、硬件资源不足等。
解决方案包括优化查询语句、建立合理索引、升级硬件资源等。
2.数据库损坏:可能原因包括误操作、病毒攻击、软件故障等。
一、SQL Server 2008 配置1、SQL Server 2008数据库服务器服务启动●利用Windows services 启动服务控制面板/管理工具/服务,找到相应服务SQL server(MSSQLSERVER),双击后通过属性窗口来控制服务状态。
●利用SQL Server Configuration Manager 启动服务SQL Server Configuration Manager 是SQL Server 2008的主要管理工具。
通过开始/所有程序/Microsoft SQL Server 2008/配置工具/SQL Server配置管理器,启动SQL Server Configuration Manager●利用命令启动服务在命令提示符中通过net命令来启动SQL server数据库服务器服务。
NET START MSSQLSERVER -(服务名称)SQL server数据库服务器服务关闭也可通过上述三种方式。
2、SQL Server2008管理平台——SQL Server Management StudioSQL Server Management Studio 是一个集成环境,用于访问、配置、管理和开发SQL Server 的所有组件。
SQL Server Management Studio 组合了大量图形工具和丰富的脚本编辑器,使各种技术水平的开发人员和管理员都能访问SQL Server。
●启动-登录●新建表-打开表-查看表-编辑表●新建查询(支持SQL与T-SQL语言)3、SQL Server 2008数据库管理SQL Server 2008将数据库映射为操作系统文件。
数据和日志信息分别存储在不同的文件中,而且每个数据库都拥有自己的数据和日志信息文件。
在默认安装路径下可以看到数据库文件:c:\program files\microsoft sql server\mssql10.mssqlserver\mssqldata下可以看到数据文件利用对象资源管理器创建用户数据库:●开始/程序/microsoft sql server 2008/sql server management studio●使用windows身份验证连接sql server 2008数据库实例。
一、数据库开启远程访问1、打开数据库管理工具【SQL Server Management Studio】,选择windows身份验证连接2、选择连接的数据库,并点击【右键】,选择属性。
3、选择【安全性】,在服务器身份验证处选择【SQL Server 和Windows 身份验证模式(S)】,选择完成后,点击【确定】。
二、添加用户并设置权限1、创建新的登录名,点击安全性前面的【+】展开后,选择【登录名】,然后点击【右键】,再选择【新建登录名(N)】2、设置登录名与密码,设置【登录名】后,选择【SQL Server 身份验证】,然后设置密码。
取消强制【实施密码策略】。
3、数据库权限设置,选择【用户映射】,选择数据库【DiaoJuDiaoDaiSys】,再选择数据库角色成员身份【db_owner】和【public】,选择完成后,点击【确定】4、使用新创建的登录名登录,点击【连接】后,再点击【数据库引擎】身份验证选择【SQL Server 身份验证】,在登录名处输入创建的新的登录名【djdddj】,然后输入密码。
点击【连接】。
连接成功后,可以看到三、远程访问端口设置1、打开【SQL Server 配置管理器】2、开启TCP/IP,点击【SQL Server 网络配置】前面的【+】,选择【MSSQLSERVER 的协议】。
选择【TCP/IP】,点击【右键】,选择【开启】。
如果已经启用,表示已经开启TCP/IP。
开启后需要重新启动SQL Server 服务。
3、配置端口,【双击】【TCP/IP】启动侦听设置访问端口,默认为:1433.4、重启SQL Server 服务。
使用【SQL Server Management Studio】登录数据,选择数据库服务,点击【右键】,选择【重新启动】。
出现提示框,选择【是】。
四、防火墙放行1、进入控制版面搜索【防火墙】,选择高级设置。
2、开启允许访问的端口,选择【入站规则】后,点击右边的【新建规则】.添加过程如下列图点击【完成】后,可以看到在入站规则中出现我们添加的信息。
配置SQL Server 2005服务器服务与服务器是两个不同的概念,服务器是提供服务的计算机,配置服务器主要是对内存、处理器、安全性等几个方面配置。
由于SQL Server 2005服务器的设置参数比较多,这里选一些比较常用的介绍。
配置SQL Server 2005服务器的办法:启动【SQL Server Management Studio】,在【对象资源管理器】窗口里,右击要配置的服务器(实例)名,在弹出的快捷菜单里选【属性】选项。
下面介绍各选项卡里的内容。
4.5.1 常规服务器属性的【常规】选项卡,此处功能是查看服务器的属性,例如服务器名、操作系统、CPU数等等。
此处各项只能查看,不能修改。
选项卡里有以下项目:l 名称:显示服务器(实例)的名称。
l 产品:显示当前运行的SQL Server的版本。
l 操作系统:显示当前运行的操作系统及版本号。
l 平台:显示运行SQL Server的操作系统和硬件。
l 版本:显示当前运行的SQL Server版本号l 语言:显示当前的SQL Server实例所使用的语言。
l 内存:显示当前服务器上安装的内存大小。
l 处理器:显示当前服务器上安装的CPU数量。
l 根目录:显示当前SQL Server实例所在的目录。
l 服务器排序规则:显示当前服务服务器采用的排序规则。
l 已群集化:显示是否安装了SQL Server 2005服务器群集。
4.5.2 内存服务器属性的【内存】选项卡,选项卡里有以下项目:l 使用AWE分配内存:32位的操作系统最多只能支持到4GB的内存,然而大型的SQL Server 2005服务器的物理内存可以扩展到64GB。
如果要使用大于4GB的内存,就要用到Windows 2000和Windows Server 2003地址对话框化扩展插件(AWE)API来识别和分配了。
这个选项是指定SQL Server利用AWE来支持超过4GB以上的物理内存。
SQL Server数据库SQL Server是一个由Microsoft开发的关系型数据库管理系统。
它是一个可靠的、强大的数据库管理软件,被广泛应用于企业、小型公司、机构和部门等各种领域。
本文将介绍SQL Server数据库的概念、数据库的设计和管理方法以及一些可供使用的工具。
概述SQL Server是一种基于关系模型的数据库管理系统。
关系模型是一种基于表(术语称之为“关系”)的方法,每个表都包含一组相关的数据。
表有一系列列,其中每一列都对应一个特定的数据类型。
数据被存储在每行中,每行都具有唯一的标识符(主键),它能够与其它表建立关联。
SQL Server的主要特点是:高效性、高可靠性、可扩展性、安全性和易使用性。
它支持各种类型的操作,包括存储、查询和更新数据。
此外,它还支持事务处理、数据安全、备份和恢复等功能。
数据库设计在设计一个SQL Server数据库之前,必须先确定数据库的目的和范围。
要考虑数据的类型、数量和与数据库相关的应用程序。
设计过程需要考虑以下几个方面:1. 数据库范式数据库范式是描述数据库结构的规则。
第一范式规定了表必须是满足单一属性的要求。
第二范式指出表必须只关注一个主键或联合主键,而不是依赖于其他非主属性。
第三范式规定表必须消除非主属性之间的传递依赖关系。
在设计一个数据库时,尽可能地消除不必要的重复数据,这将提高数据库的规范性和整体性能。
2. 数据库表设计一个数据库被划分为多个表,每个表都具有自己的字段和行。
在设计每个表时,必须定义好每个字段的数据类型、大小和约束。
每个表都应该有一个主键来标识数据和行。
此外,还应该使用外键来定义表之间的关系。
这些关系使得不同表之间数据的相关性能够被捕捉和维持。
3. 数据库的物理设计物理设计是将逻辑数据库设计转换为数据库管理系统能够读取和处理的实际物理文件结构。
在这个过程中,需要考虑数据的存储和访问速度。
应该将表和索引放在不同的文件组中,这样可以更好地维护它们。
1 11
竭诚为您提供优质文档/双击可除
sqlserver数据库安全配置规范
篇一:sqlserver2000的安全配置
sqlserver2000的安全配置
sqlserver2000的安全配置在进行sqlserver2000数据
库的安全配置之前,首先你必须对操作系统进行安全配置,
保证你的操作系统处于安全状态。然后对你要使用的操作数
据库软件(程序)进行必要的安全审核,比如对asp、php
等脚本,这是很多基于数据库的web应用常出现的安全隐患,
对于脚本主要是一个过滤问题,需要过滤一些类似,‘;@/等
字符,防止破坏者构造恶意的sql语句。接着,安装
sqlserver2000后请打上补丁sp1以及最新的sp2。
下载地址是:/sql/downloads/2000/sp1.asp
和/sql/downloads/2000/sp2.asp
在做完上面三步基础之后,我们再来讨论sqlserver的
安全配置。
1、使用安全的密码策略
2 11
我们把密码策略摆在所有安全配置的第一步,请注意,
很多数据库帐号的密码过于简单,这跟系统密码过于简单是
一个道理。对于sa更应该注意,同时不要让sa帐号的密码
写于应用程序或者脚本中。健壮的密码是安全的第一步!
sqlserver2000安装的时候,如果是使用混合模式,那么就
需要输入sa的密码,除非你确认必须使用空密码。这比以
前的版本有所改进。同时养成定期修改密码的好习惯。数据
库管理员应该定期查看是否有不符合密码要求的帐号。
比如使用下面的sql语句:
usemaster
selectname,passwordfromsysloginswherepasswordisnull
2、使用安全的帐号策略
由于sqlserver不能更改sa用户名称,也不能删除这
个超级用户,所以,我们必须对这个帐号进行最强的保护,
当然,包括使用一个非常强壮的密码,最好不要在数据库应
用中使用sa帐号,只有当没有其它方法登录到sqlserver
实例(例如,当其它系统管理员不可用或忘记了密码)时才
使用sa。建议数据库管理员新建立个拥有与sa一样权限的
超级用户来管理数据库。安全的帐号策略还包括不要让管理
员权限的帐号泛滥。
sqlserver的认证模式有windows身份认证和混合身份
3 11
认证两种。如果数据库管理员不希望操作系统管理员来通过
操作系统登陆来接触数据库的话,可以在帐号管理中把系统
帐号“builtin\administrators”删除。不过这样做的结果
是一旦sa帐号忘记密码的话,就没有办法来恢复了。很多
主机使用数据库应用只是用来做查询、修改等简单功能的,
请根据实际需要分配帐号,并赋予仅仅能够满足应用要求和
需要的权限。比如,只要查询功能的,那么就使用一个简单
的public帐号能够select就可以了。
3、加强数据库日志的记录
审核数据库登录事件的“失败和成功”,在实例属性中
选择“安全性”,将其中的审核级别选定为全部,这样在数
据库系统和操作系统日志里面,就详细记录了所有帐号的登
录事件。请定期查看sqlserver日志检查是否有可疑的登录
事件发生,或者使用dos命令。findstr/c:"登录
"d:\microsoftsqlserver\mssql\log\*.*
4、管理扩展存储过程
对存储过程进行大手术,并且对帐号调用扩展存储过程
的权限要慎重。其实在多数应用中根本用不到多少系统的存
储过程,而sqlserver的这么多系统存储过程只是用来适应
广大用户需求的,所以请删除不必要的存储过程,因为有些
系统的存储过程能很容易地被人利用起来提升权限或进行
破坏。如果你不需要扩展存储过程xp_cmdshell请把它去掉。
4 11
使用这个sql语句:
usemaster
sp_dropextendedprocxp_cmdshell
xp_cmdshell是进入操作系统的最佳捷径,是数据库留
给操作系统的一个大后门。如果你需要这个存储过程,请用
这个语句也可以恢复过来。
sp_addextendedprocxp_cmdshell,xpsql70.dll
如果你不需要请丢弃ole自动存储过程(会造成管理器
中的某些特征不能使用),
这些过程包括如下:
sp_oacreatesp_oadestroysp_oageterrorinfosp_oagetpro
perty
sp_oamethodsp_oasetpropertysp_oastop
去掉不需要的注册表访问的存储过程,注册表存储过程
甚至能够读出操作系统管理员的密码来,如下:
xp_regaddmultistringxp_regdeletekeyxp_regdeletevalu
e
xp_regenumvaluesxp_regreadxp_regremovemultistring
xp_regwrite
5 11
还有一些其他的扩展存储过程,你也最好检查检查。在
处理存储过程的时候,请确认一下,避免造成对数据库或应
用程序的伤害。
5、使用协议加密
sqlserver2000使用的tabulardatastream协议来进行
网络数据交换,如果不加密的话,所有的网络传输都是明文
的,包括密码、数据库内容等等,这是一个很大的安全威胁。
能被人在网络中截获到他们需要的东西,包括数据库帐号和
密码。所以,在条件容许情况下,最好使用ssl来加密协议,
当然,你需要一个证书来支持。
6、不要让人随便探测到你的tcp/ip端口
默认情况下,sqlserver使用1433端口监听,很多人都
说sqlserver配置的时候要把这个端口改变,这样别人就不
能很容易地知道使用的什么端口了。可惜,通过微软未公开
的1434端口的udp探测可以很容易知道sqlserver使用的
什么tcp/ip端口了。不过微软还是考虑到了这个问题,毕
竟公开而且开放的端口会引起不必要的麻烦。在实例属性中
选择tcp/ip协议的属性。选择隐藏sqlserver实例。如果
隐藏了sqlserver实例,则将禁止对试图枚举网络上现有的
sqlserver实例的客户端所发出的广播作出响应。这样,别
人就不能用1434来探测你的tcp/ip端口了(除非用
portscan)。