sqlserver 安全设置

客户叫我设置一下sql的安全设置,平时也确实没怎么注意,这里记录一下

1.高确保Sysadmin角色中所有经过SQL身份验证的登录名的“ CHECK_EXPIRATION”选项都设置为“ ON” | 访问控制描述

将Windows中使用的相同密码过期策略应用于SQL Server内部使用的密码。 确保SQL登录名符合Windows Server Benchmark所

应用的安全密码策略,将确保频繁更改具有sysadmin特权的SQL登录名的密码,以帮助防止通过蛮力攻击造成的损害。

CONTROL SERVER是sysadmin的等效权限,并且还应该要求具有该权限的登录名具有到期的密码。 

检查提示--加固建议

运行以下T-SQL语句,以CHECK_EXPIRATION = OFF查找sysadmin或等效登录名。 不应返回任何行。
SELECT l.[name], 'sysadmin membership' AS 'Access_Method'
FROM sys.sql_logins AS l
WHERE IS_SRVROLEMEMBER('sysadmin',name) = 1
AND l.is_expiration_checked <> 1
UNION ALL
SELECT l.[name], 'CONTROL SERVER' AS 'Access_Method'
FROM sys.sql_logins AS l
JOIN sys.server_permissions AS p
ON l.principal_id = p.grantee_principal_id
WHERE p.type = 'CL' AND p.state IN ('G', 'W')
AND l.is_expiration_checked <> 1;对于审核程序发现的每个<login_name>,执行以下T-SQL语句:
ALTER LOGIN [login_name] WITH CHECK_EXPIRATION = ON;
操作时建议做好记录或备份

2.高确保所有SQL身份验证登录名的“ CHECK_POLICY”选项都设置为“ ON” | 身份鉴别描述

将Windows中使用的相同密码过期策略应用于SQL Server内部使用的密码。确保SQL登录名符合Windows Server Benchmark

所应用的安全密码策略,将确保频繁更改具有sysadmin特权的SQL登录名的密码,以帮助防止通过蛮力攻击造成的损害。 控制

SERVER是sysadmin的等效权限,并且还应该要求具有该权限的登录名具有到期的密码。

检查提示--加固建议

使用以下代码段确定SQL登录名的状态以及是否强制执行其密码复杂性。
SELECT name, is_disabled
FROM sys.sql_logins
WHERE is_policy_checked = 0;对于审核过程发现的每个<login_name>,执行以下T-SQL语句
ALTER LOGIN [login_name] WITH CHECK_POLICY= ON;
操作时建议做好记录或备份
确定

3.高确保将“登录审核”设置为“失败”和“成功登录” | 安全审计

描述
设置日志记录成功和失败的登录SQL Server身份验证尝试。记录成功和失败的登录信息可提供关键信息,这些信息可用于

检测/确认密码猜测攻击。 此外,记录成功的登录尝试可用于在司法调查期间确认服务器访问。
检查提示
--
加固建议
执行以下步骤来设置审核级别: 1.打开SQL Server Management Studio。 2.右键单击目标实例,然后选择“属性”并导航到

“安全性” 标签。 3.在“登录审核”下选择选项“成功登录失败和成功登录” 部分,然后单击确定。 4.重新启动SQL Server实例。
操作时建议做好记录或备份

原文地址:https://www.cnblogs.com/shellphen/p/14168453.html