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

求可审计指定打印机的PrintService ID 307审计脚本

筛选特定打印机的PrintService审计脚本

要仅审计指定的打印机,你只需在原脚本的筛选条件中添加打印机名称匹配规则即可。事件ID 307对应文档成功打印的记录,其中包含打印机名称信息,我们可以通过事件的Properties属性定位到该字段并筛选。

步骤1:确认打印机名称在事件中的属性索引

先执行以下命令查看单条307事件的属性详情,确认哪个索引对应打印机名称:

Get-WinEvent -ProviderName "Microsoft-Windows-PrintService" -FilterHashtable @{Id=307} | 
    Select-Object -First 1 -ExpandProperty Properties

输出会显示多个Property对象,其中Value为打印机名称的那一项的索引(从0开始)就是我们需要的,通常为3(不同系统可能略有差异)。

步骤2:修改脚本添加筛选条件

场景1:精确匹配多个指定打印机

定义目标打印机列表,仅保留匹配这些打印机的事件:

# 替换为你需要审计的打印机名称
$targetPrinters = @("HP LaserJet Pro MFP M426dw", "Canon iR-ADV C5535i")

Get-WinEvent -ProviderName "Microsoft-Windows-PrintService" | 
    Where-Object { 
        $_.Id -eq 307 -and 
        $_.Properties[3].Value -in $targetPrinters 
    } | 
    Format-List > C:\relatorio.txt

场景2:模糊匹配(包含指定关键词的打印机)

如果需要匹配名称包含特定关键词的打印机(比如所有HP品牌打印机),使用-like运算符:

Get-WinEvent -ProviderName "Microsoft-Windows-PrintService" | 
    Where-Object { 
        $_.Id -eq 307 -and 
        $_.Properties[3].Value -like "*HP*" 
    } | 
    Format-List > C:\relatorio.txt

说明

  • 若步骤1中发现打印机名称对应的属性索引不是3,只需将脚本中的Properties[3]替换为实际索引即可。
  • -in用于精确匹配多个值,-like配合通配符*用于模糊匹配,可根据需求选择。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 22:45:27