如何在指定Active Directory域中查询用户的AuthType(Kerberos/NTLM)
筛选Active Directory中使用Kerberos认证的用户
AD用户对象本身并没有存储固定的「认证类型」属性,用户的认证方式是每次登录时的动态行为,因此需要通过域控制器的安全日志来分析筛选。以下是两种可行的方法:
方法一:通过域控制器事件查看器手动筛选
- 登录域控制器,打开事件查看器,定位到
Windows日志 > 安全 - 在日志筛选器中添加事件ID条件:Kerberos相关的核心认证事件为 4768(Kerberos票证请求)和 4769(Kerberos服务票证请求),这两类事件直接对应用户使用Kerberos认证的行为
- 筛选后查看每条事件的详情,其中
账户名称字段即为使用Kerberos认证的用户
方法二:用PowerShell批量提取并去重
通过PowerShell可以快速抓取指定时间范围内的Kerberos认证用户列表,命令示例如下:
# 替换DC01为你的域控制器名称,调整StartTime设置时间范围 Get-WinEvent -ComputerName "DC01" -FilterHashtable @{ LogName = 'Security' ID = 4768,4769 StartTime = (Get-Date).AddDays(-7) } | Select-Object -Property @{Name='UserName'; Expression={$_.Properties[0].Value}} | Sort-Object -Unique UserName
执行后会输出指定时间段内所有使用Kerberos认证过的用户名单(自动去重)。
内容的提问来源于stack exchange,提问作者Neerajyadav Kumar
相关产品推荐
相关产品推荐

