TMAegisBeta
更多 mssql 规则

Microsoft SQL Server

TMA-MSSQL-3.10

Ensure Windows local groups are not SQL Logins

中级别 1自动化mssql

说明

Local Windows groups should not be used as logins for SQL Server instances. Default: By default, no local groups are added as SQL logins. Runs one sqlcmd query with its defaults (Windows authentication to the local default instance); set SQLCMDSERVER, SQLCMDUSER and SQLCMDPASSWORD for another instance or SQL authentication. Needs VIEW SERVER STATE / sysadmin-level read access.

检查方式

审计方法: SQL 查询

sql_query
sqlcmd -b -h -1 -W -Q "SET NOCOUNT ON; SELECT COUNT(*) FROM sys.server_principals pr JOIN sys.server_permissions pe ON pr.principal_id = pe.grantee_principal_id WHERE pr.type_desc = 'WINDOWS_GROUP' AND pr.name LIKE CAST(SERVERPROPERTY('MachineName') AS nvarchar(128)) + '%';"
预期输出
0

修复方式

修复方法: 操作指南或基础设施补丁

1. For each LocalGroupName login, if needed create an equivalent AD group containing only the required user accounts. 2. Add the AD group or individual Windows accounts as a SQL Server login and grant it the permissions required. 3. Drop the LocalGroupName login using the syntax below after replacing <name>. USE [master] GO DROP LOGIN [<name>] GO

属性

操作系统
任意
标签
mssqldatabaseprivileges
参考
CIS Microsoft SQL Server 2025 Benchmark v1.0.0 - 3.10 Ensure Windows local groups are not SQL Logins

检查本机

请在您有权审计的机器上运行此命令。扫描为只读操作。

shell
tmaegis scan --target mssql