SqlServer数据库基线检查
中国联通内网SQL数据库安全基线配置指南

目录前言 (III)1 范围 (1)2 定义与缩略语 (1)2.1 定义............................................ 错误!未定义书签。
2.2 缩略语 (1)3 安全配置要求 (1)3.1 操作系统安全 (1)3.2 互联网访问安全 (1)3.3 服务器应用安全 (1)3.4 测试开发环境安全 (2)3.5 SQL Server服务帐户安全 (2)3.6 磁盘分区安全 (2)3.7 目录安全 (2)3.8 SQL Server补丁 (3)3.9 SQL Server端口 (3)3.10 范例数据库 (3)3.11 停用SQL Server的命名管道 (4)3.12 删除扩展的存储过程 (4)3.13 SQL Server属性配置常规选项 (4)3.14 SQL Server属性配置连接选项 (4)3.15 SQL Server属性配置数据库设置选项 (5)3.16 SQL 登录帐号 (5)3.17 审计信息检查 (5)3.18 审计启用 (5)3.19 审计日志 (6)3.20 数据库备份 (6)4 评审与修订 (6)前言为确保中国联通信息系统的网络支撑和内网信息安全,指导各省级分公司做好SQL数据库的安全维护相关工作,在研究国际先进企业最佳实践的基础上,结合中国联通内网信息安全现状和实际需求,特制定本配置指南。
本文档由中国联合网络通信有限公司管理信息系统部提出并归口管理。
本文档起草单位:中国联合网络通信有限公司、系统集成公司。
本文档主要起草人:钮吉安,安莹。
本文档解释单位:中国联合网络通信有限公司管理信息系统部。
1范围本文档规定了中国联通范围内安装有SQL数据库的主机应当遵循的安全性设置标准,本文档旨在指导系统管理人员进行SQL数据库的安全配置。
本文档适用版本:SQL数据库本文档的适用范围为中国联通集团总部、各直属单位、各省级分公司。
2定义与缩略语2.1缩略语下列符号和缩略语适用于本标准:术语及缩写英文中文SQL Structured Query Language结构化查询语言3安全配置要求3.7目录安全3.10范例数据库3.13SQL Server属性配置常规选项3.14SQL Server属性配置连接选项3.15SQL Server属性配置数据库设置选项3.17审计信息检查3.19审计日志4评审与修订本指南由中国联通集团管理信息系统部每年审查一次,并根据需要进行修订;如遇国家相关法律法规发生变化或中国联通企业信息安全策略发生重大变更等情况时,本指南将适时修订。
sqlserver数据库状态评估语句

在SQL Server中,可以使用一些系统视图和函数来评估数据库的状态。
以下是一些常用的语句和查询,可以帮助你评估数据库的健康状况、性能和资源使用情况:1.查看数据库文件信息:sql复制代码EXEC sp_help 'YourDatabaseName';2.查看数据库文件大小和可用空间:sql复制代码EXEC sp_help 'YourDatabaseName'; -- 返回数据库文件大小和可用空间信息EXEC sp_spaceused 'YourDatabaseName'; -- 返回数据库文件使用情况3.查看数据库连接数:sql复制代码SELECT * FROM sys.dm_exec_sessions WHERE database_id = DB_ID('YourDatabaseName');4.查看数据库锁定情况:sql复制代码SELECT * FROM sys.dm_tran_locks WHERE database_id = DB_ID('YourDatabaseName');5.查看数据库索引使用情况:sql复制代码SELECT * FROM sys.dm_db_index_usage_stats WHERE database_id = DB_ID('YourDatabaseName');6.查看数据库备份信息:sql复制代码SELECT * FROM msdb.dbo.backupset WHERE database_name = 'YourDatabaseName';7.查看数据库恢复模式:sql复制代码SELECT name, is_auto_close_on, is_auto_shrink_on, is_auto_update_stats_on, is_auto_update_stats_async_on,is_auto_create_stats_on, is_auto_create_stats_async_on, is_auto_stats_on, is_auto_stats_async_on, is_auto_rebuild_stats_on, is_auto_rebuild_stats_async_on FROM sys.databases WHERE name = 'YourDatabaseName';这些语句和查询可以帮助你了解数据库的基本状态和性能。
MicrosoftSQLServer数据库系统配置安全基线标准与操作指引-网络

Microsoft SQL Server数据库系统配置安全基线标准与操作指南南京农业大学图书与信息中心2018年6月目录第1章概述 (1)1.1 安全基线概念 (1)1.2 文档编制目的 (1)1.3 文档适用范围 (1)1.4 文档修订 (1)第2章帐号与口令 (1)2.1 口令安全 (1)2.1.1 删除不必要的帐号 (1)2.1.2 用户口令安全 (1)2.1.3 帐号分配管理 (2)2.1.4 分配数据库用户所需的最小权限 (2)2.1.5 网络访问限制 (2)第3章日志 (3)3.1 日志审计 (3)3.1.1 登录审计 (3)3.1.2 安全事件审计 (3)第4章其他安全配置 (4)4.1 安全策略 (4)4.1.1 通讯协议安全策略 (4)4.2 更新补丁 (4)4.2.1 补丁要求 (4)4.3 存储保护 (5)4.3.1 停用不必要存储过程 (5)第1章概述1.1 安全基线概念安全基线是指满足最小安全保证的基本要求。
1.2 文档编制目的本文档针对安装运行Microsoft SQL Server数据库系统的服务器主机所应当遵循的基本安全设置要求提供了参考建议,供校园网用户在安装使用Microsoft SQL Server数据库系统提供数据存储服务过程中进行安全合规性自查、检查、加固提供标准依据与操作指导。
1.3 文档适用范围本文档适用于Microsoft SQL Server数据库系统的各类版本。
1.4 文档修订本文档的解释权和修改权属于南京农业大学图书与信息中心,欢迎校园网用户提供意见或建议,请发送至security@。
第2章帐号与口令2.1 口令安全2.1.1 删除不必要的帐号2.1.2 用户口令安全查看password 字段应不为null2.1.3 帐号分配管理2.1.4 分配数据库用户所需的最小权限2.1.5 网络访问限制在防火墙中做限制,只允许与指定的IP 地址建立1433 的通第3章日志3.1 日志审计3.1.1 登录审计3.1.2 安全事件审计打开企业管理器,查看数据库“管理”中的“ SQL Server第4章其他安全配置4.1 安全策略4.1.1 通讯协议安全策略4.2 更新补丁4.2.1 补丁要求级效果,再在实际运行环境更新数据库。
Microsoft SQL Server安全配置基线

Microsoft SQL Server数据库系统安全配置基线中国移动通信公司管理信息系统部2012年 4月版本版本控制信息更新日期更新人审批人V1.0 创建2009年1月V2.0 更新2012年4月备注:1.若此文档需要日后更新,请创建人填写版本控制表格,否则删除版本控制表格。
目录第1章概述 (4)1.1适用范围 (4)1.2适用版本 (4)1.3实施 (4)1.4例外条款 (4)第2章帐号与口令 (5)2.1口令安全 (5)2.1.1删除不必要的帐号* (5)2.1.2SQLServer用户口令安全 (5)2.1.3根据用户分配帐号避免帐号共享* (6)2.1.4分配数据库用户所需的最小权限* (6)2.1.5网络访问限制* (7)第3章日志 (8)3.1日志审计 (8)3.1.1SQLServer登录审计* (8)3.1.2SQLServer安全事件审计* (8)第4章其他 (10)4.1安全策略 (10)4.1.1通讯协议安全策略* (10)4.2更新补丁 (10)4.2.1补丁要求* (10)4.3存储保护 (11)4.3.1停用不必要存储过程* (11)第5章评审与修订 (13)第1章概述本文档规定了中国移动通信有限公司管理信息系统部门所维护管理的SQL Server 数据库应当遵循的数据库安全性设置标准,本文档旨在指导系统管理人员或安全检查人员进行SQL Server 数据库的安全合规性检查和配置。
1.1 适用范围本配置标准的使用者包括:数据库管理员、应用管理员、网络安全管理员。
本配置标准适用的范围包括:中国移动总部和各省公司信息化部门维护管理的SQL Server数据库系统。
1.2 适用版本SQL Server系列数据库。
1.3 实施本标准的解释权和修改权属于中国移动集团管理信息系统部,在本标准的执行过程中若有任何疑问或建议,应及时反馈。
本标准发布之日起生效。
1.4 例外条款欲申请本标准的例外条款,申请人必须准备书面申请文件,说明业务需求和原因,送交中国移动通信有限公司管理信息系统部进行审批备案。
中国联通内网SQL数据库安全基线配置指南

中国联通内网SQL数据库安全基线配置指南中国联通内网SQL数据库安全基线配置指南中国联通内网SQL数据库安全配置指南(试行)目录前言................................................................ V II 1范围12定义与缩略语12.1定义................................. 错误!未定义书签。
2.2缩略语 (1)3安全配置要求13.1操作系统安全 (1)3.2互联网访问安全 (2)3.3服务器应用安全 (3)3.4测试开发环境安全 (3)3.5SQL Server服务帐户安全 (4)3.6磁盘分区安全 (4)3.7目录安全 (5)3.8SQL Server补丁 (6)3.9SQL Server端口 (7)3.10范例数据库 (7)3.11停用SQL Server的命名管道 (8)3.12删除扩展的存储过程 (8)3.13SQL Server属性配置常规选项 (9)3.14SQL Server属性配置连接选项 (9)3.15SQL Server属性配置数据库设置选项 (10)3.16SQL 登录帐号 (10)3.17审计信息检查 (11)3.18审计启用 (11)3.19审计日志 (12)3.20数据库备份 (12)4评审与修订13前言为确保中国联通信息系统的网络支撑和内网信息安全,指导各省级分公司做好SQL数据库的安全维护相关工作,在研究国际先进企业最佳实践的基础上,结合中国联通内网信息安全现状和实际需求,特制定本配置指南。
本文档由中国联合网络通信有限公司管理信息系统部提出并归口管理。
本文档起草单位:中国联合网络通信有限公司、系统集成公司。
本文档主要起草人:钮吉安,安莹。
本文档解释单位:中国联合网络通信有限公司管理信息系统部。
1范围本文档规定了中国联通范围内安装有SQL 数据库的主机应当遵循的安全性设置标准,本文档旨在指导系统管理人员进行SQL数据库的安全配置。
检查sql数据库是否损坏的语句

一、检查数据库完整性的重要性在数据库管理中,数据库的完整性是非常重要的。
如果数据库损坏或不完整,可能会导致数据丢失或系统崩溃。
定期检查数据库的完整性是保证数据安全和系统稳定性的关键步骤。
二、检查数据库完整性的方法1. 使用DBCC CHECKDB命令DBCC CHECKDB是SQL Server提供的一个用于检查数据库完整性的命令。
它可以检查数据库中所有对象的完整性,包括表、索引、视图等。
可以通过以下语句来运行DBCC CHECKDB命令:DBCC CHECKDB ('database_name');2. 使用DBCC CHECKTABLE命令DBCC CHECKTABLE命令可以用来检查数据库中特定表的完整性。
可以通过以下语句来运行DBCC CHECKTABLE命令:DBCC CHECKTABLE ('table_name');3. 使用DBCC CHECKFILEGROUP命令DBCC CHECKFILEGROUP命令可以用来检查文件组的完整性。
可以通过以下语句来运行DBCC CHECKFILEGROUP命令:DBCC CHECKFILEGROUP ('filegroup_name');4. 使用DBCC CHECKALLOC命令DBCC CHECKALLOC命令可以用来检查分配给数据库对象的存储空间的完整性。
可以通过以下语句来运行DBCC CHECKALLOC命令:DBCC CHECKALLOC;三、检查数据库完整性的注意事项1. 在进行完整性检查之前,应该备份数据库以防止任何意外发生。
2. 在生产环境中进行完整性检查时,应该避免对数据库进行写操作,以免影响正在运行的业务。
3. 对于大型数据库,完整性检查可能需要较长的时间,应该安排在系统负载较低的时段进行。
四、检查数据库完整性的建议1. 定期检查数据库完整性,例如每周或每月进行一次完整性检查。
sqlserver数据库连接状态查询语句

sqlserver数据库连接状态查询语句在SQL Server中,可以使用以下查询语句来查看数据库连接状态:SELECTDB_NAME(dbid) AS '数据库名称',COUNT(dbid) AS '连接数量'FROMsys.sysprocessesWHEREdbid > 0GROUP BYdbid;这个查询语句使用sys.sysprocesses系统视图来获取当前数据库连接的信息。
它会返回每个数据库的名称和连接数量。
请注意,这个查询只会返回活动连接的信息,已断开的连接不会包含在结果中。
另外,如果只想查询某个特定数据库的连接状态,可以在WHERE子句中添加条件,例如:SELECTCOUNT(dbid) AS '连接数量'FROMsys.sysprocessesWHEREdbid = DB_ID('YourDatabaseName');将YourDatabaseName替换为想要查询连接状态的数据库的名称。
请注意,sys.sysprocesses视图在较新版本的SQL Server中已被标记为过时,推荐使用sys.dm_exec_sessions和sys.dm_exec_connections动态管理视图来获取连接状态信息。
以下是使用这两个视图的示例查询:SELECTDB_NAME(database_id) AS '数据库名称',COUNT(session_id) AS '连接数量'FROMsys.dm_exec_sessionsWHEREdatabase_id > 0GROUP BYdatabase_id;或者,针对特定数据库的查询:SELECTCOUNT(session_id) AS '连接数量'FROMsys.dm_exec_sessionsWHEREdatabase_id = DB_ID('YourDatabaseName');同样,将YourDatabaseName替换为要查询连接状态的数据库的名称。
基线检查

Informix数据库安全基线检查5-5-1应按照用户分配账号。
避免不同用户间共享账号。
避免用户账号和设备间通信使用的账号共享检查方法1、符合性判定依据不同用户具有不同的账号,且与其他用户、设备没有账号共享情况。
2、参考检测方法通过root 账号登录系统后查看/etc/passwd、/etc/group 文件并询问管理员,确认是否按照用户分配账号;验证分配的用户是否正常使用,使用分配账号登录,验证是否能成功登录和正常操作。
5-5-2应删除与数据库运行、维护等工作无关的账号,删除过期账号检查方法:AIX查看/etc/passwd ,/etc/group 中的informix组账户和成员账号SolarisCat /etc/shadow cat /etc/passwd检查目的是:无关账号被锁定或者是不存在密码相关的问题5-5-3对于采用静态口令进行认证的数据库,口令长度至少8位,并包括数字、小写字母、大写字母和特殊符号4类中至少3类对于采用静态口令认证技术的数据库,账户口令的生存期不长于90 天。
对于采用静态口令认证技术的数据库,应配置数据库,使用户不能重复使用最近5 次(含5 次)内已使用的口令。
检查方法:Aix 系统查看/etc/security/user,minlen=8 口令最短为8 个字符minalpha=3 口令中最少包含3 个字母字符minother=1 口令中最少包含一个非字母数字字符编辑/etc/security/user,设置如下:maxage=12 口令最长有效期为12 周histsize=5 同一口令与前5 个口令不能重复solaris系统检查/etc/default/passwd是否设置如下参数:PASSLENGTH = 8 #设定最小用户密码长度为8 位MINALPHA=2;MINNONALPHA=1 #表示至少包括两个字母和一个非字母;对于Solaris 8 以前的版本,PWMIN 对应MINWEEKS,PWMAX 对应MAXWEEKS 等,需根据/etc/default/passwd文件说明确定。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
系统中不存在口令为空的登录账号则合规,否则不合规.
检查点
检查是否存在空口令账号
结果
截图
并说明符合/不符合,不符合的需整改为符合
加固方案
参考步骤:
(1).打开SQL Server Management Studio,连接相应的数据库实例.
(2).依次展开“安全性”、“登录名”节点,打开相应的帐户的属性,选择“常规”选项卡,设置密码并确认密码.
(4). 单击“更改范围”.
(5). 指定要为其阻止此端口的一系列计算机,然后单击“确定”.
如果修改了SQL Sever监听端口,请在自定义参数配置页面,修改端口参数.
Sqlserver-9
禁止SA账户远程登录
判定依据
检测步骤:
使用查询分析器,使用SA账号不能连接SQL server
判定依据:
sa登录账号不能登录数据库则合规,否则不合规.
检查点
检查SQL Server用户账号个数
结果
截图
并说明符合/不符合,不符合的需整改为符合
加固方案
参考步骤:
(1).打开SQL Server Management Studio(在SQL Server 2000下打开企业管理器),登入相应的数据库实例.
(2).依次展开“安全性”、“登录名”(在SQL Server 2000下为“登录”)节点,创建多个账户.按照实际情况赋予账户相应的角色.
判定依据
检测步骤:
执行以下命令查看LoginMode的值:
#reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL.1\MSSQLServer" /v LoginMode #注意注册表路径不固定,请依据实际情况确定
判定依据:
LoginMode的值为0x2则合规,否则不合规.
检查点
检查 “服务器身份验证”模式
结果
截图
并说明符合/不符合,不符合的需整改为符合
加固方案
参考步骤:
(1).打开SQL Server Management Studio(在SQL Server 2000下打开企业管理器),连接相应的数据库实例.
判定依据
检测步骤:
使用以下命令检查系统是否将如下扩展存储过程的执行权限赋予public角色
#select name from sysobjects where id in(select major_id from sys.database_permissionswhere grantee_principal_id=DATABASE_PRINCIPAL_ID('public') and permission_name='EXECUTE' and state_desc != 'DENY' and major_id in (select id from sysobjects where name in( '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_logevent','xp_loginconfig','xp_logininfo','xp_makewebtask','xp_msver xp_perfend','xp_perfmonitor','xp_perfsample','xp_perfstart','xp_readerrorlog','xp_readmail','xp_run ebtask','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')));
判定依据:
ForceEncryption的值为0x1则合规,否则不合规.
检查点
检查是否使用通讯协议加密
结果
截图
并说明符合/不符合,不符合的需整改为符合
加固方案
参考配置操作
(1).单击"开始",在 Microsoft SQL Server 程序组中,指向"配置工具",再单击"SQL Server Configuration Manager"。
加固方案
参考步骤:
(1).打开SQL Server Management Studio,连接相应的数据库实例.
(2).依次展开“安全性”、“登录名”节点,打开相应的帐户的属性,选择“常规”选项卡,勾选“强制实施密码策略”;在SQL Server 2000中,请手动检查.
Sqlserver-7
检查是否强制密码过期
(3)在"身份验证"下,只选择"Windows ".
(4) 重新启动SQL Server服务.
说明(加固该项之前请慎重):
1)此项仅在使用“使用 Windows 身份验证”的模式下适用.
2)做了此项限制,只能使用Windows账号本地登录数据库,需要赋予相应权限.
3.
Sqlserver-10
检查身份验证设置是否安全
Sqlserver-3
检查是否存在空口令登录名
判定依据
检测步骤:
执行以下命令查看系统中是否存在口令为空的登录账号:
#select * from syslogins where sid in(select sid from sysusers where issqluser=1) and password is null;
(2).依次展开“安全性”、“登录名”(在SQL Server 2000下为“登录”)节点,删除“BUILTIN\Administrators”用户.
Sqlserver-5
查看sa登录名是否被修改
判定er,登录失败.
判定依据:
重命名sa登录名名称则合规,否则不合规
(2).在数据库名称上点击右键,打开其属性对话框,选择“安全性”选项卡,将“登录审核”(在SQL Server 2000下为“审核级别”)更改为“失败和成功的登录”(在SQL Server 2000下为“全部”).
(3).重启数据库使之生效。
4.
Sqlserver-12
使用通讯协议加密
判定依据
检查步骤:
#select name from sys.sql_logins where is_policy_checked = 0 and name not like '##%';
判定依据:
系统不存在未强制实施密码策略的用户
检查点
检查是否强制实施密码策略(密码复杂度)
结果
截图
并说明符合/不符合,不符合的需整改为符合
判定依据:
AuditLevel的值为0x3则合规,否则不合规.
检查点
检查 “登录审核”级别
结果
截图
并说明符合/不符合,不符合的需整改为符合
加固方案
参考步骤:
(1).打开SQL Server Management Studio(在SQL Server 2000下打开企业管理器),连接相应的数据库实例.
1.
Sqlserver-1
检查是否按照用户分配帐号
判定依据
检测步骤:
执行以下命令查看SQL Server用户账号个数
#select count(name) from master..syslogins where isntname=0 and name not like '##%'