You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何识别Win32 Services中服务的登录账户类型并完成分类?

Windows服务This account分类实现方案

可以通过账户名称规则匹配 + 系统身份校验的方式完成分类,以下是具体实现思路:

1. 先梳理预设分类规则

按匹配优先级从高到低设置规则,避免误判:

  • 内置服务专用账户优先级最高,直接匹配完整账户名:
    • NT AUTHORITY\LocalService → 归类为 LocalService
    • NT AUTHORITY\NetworkService → 归类为 Network Service
    • 其余NT AUTHORITY\、NT SERVICE\前缀的内置身份可根据需求单独扩展分类
  • 本地用户账户:账户名以.、localhost\或当前本机计算机名开头,例如.\SomeUsername、WIN-XXXX\TestUser→ 归类为 本地用户账户
  • 域用户账户:账户名以Active Directory域名前缀开头,例如CONTOSO\AdminUser → 归类为 域用户账户

2. 核心实现步骤

步骤1:获取所有服务的登录账户信息

可以通过Win32 API、WMI接口或PowerShell获取服务的StartName属性(即服务配置的登录账户),以PowerShell为例,获取命令为:

# 获取所有服务的名称、显示名、登录账户
Get-CimInstance -ClassName Win32_Service | Select-Object Name, DisplayName, StartName

首先过滤掉StartName为NT AUTHORITY\SYSTEM的服务,这类属于Local System account分类,不需要纳入本次This account的判定范围。
服务登录配置的属性页参考:
服务登录属性页

步骤2:按规则匹配分类

遍历获取到的每个服务的StartName值,按上述优先级逐一匹配规则,返回对应分类即可。如果需要更高的判定准确率,可以调用Windows身份验证API(例如LookupAccountName)校验账户的实际类型,避免自定义命名和内置规则冲突。

步骤3:结果输出

可以将分类结果输出为自定义枚举值、字典分组或结构化表格,方便后续调用。


内容的提问来源于stack exchange,提问作者Krishi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 00:06:03