系统学习 Windows 学习路径:从 CMD 到 PowerShell、系统网络,再到 WSL 与 Server

klist

查看和清理本机 Kerberos 票据缓存,排查认证与 SPN 问题。

补充说明

klist 显示当前登录会话缓存的 Kerberos 票据,包括 TGT、服务票据、加密类型和有效期。排查“刚改完组权限却不生效”“访问共享一直提示认证失败”时,先看票据再决定是否清理。

它内置于 Windows,普通用户可以查看自己的票据;清理其他登录会话或 SYSTEM 会话的票据需要管理员权限。purge 只是删除本地缓存,不会修改 AD,也不会删除账户或密码,应用会在下次访问时重新申请票据。

Windows Server 2016+ 与 Windows 10/11 行为一致。PowerShell 没有等价的纯 cmdlet,通常仍用 klist 配合事件日志分析。

常用示例

# 查看当前会话的全部票据
C:\> klist

# 只看 TGT,确认是否已获得域票据
C:\> klist tgt

# 查看票据详情,包括加密类型和到期时间
C:\> klist -v

# 列出本机所有登录会话及其 LogonId
C:\> klist sessions

# 影响范围:清空当前用户的票据缓存,已建立的 Kerberos 会话会重新认证,个别应用可能短暂提示登录
# 备份/回滚:无需备份;重新访问资源或注销/登录即可重新获取票据
C:\> klist purge

# 影响范围:清理 SYSTEM 登录会话的票据,可能影响以系统身份运行的服务认证
# 备份/回滚:仅在明确排查服务票据时使用;重启相关服务或重启主机可恢复
C:\> klist -li 0x3e7 purge

易错点与排错

相关命令

参考链接

读完自测

  1. klist purge 会删除 AD 中的账户或重置密码吗?
  2. 修改组成员后权限不生效,为什么清理票据可能有效?
  3. 只想查看某个服务账户的票据,应该怎么做?
答案
  1. 不会,它只清空本机 Kerberos 票据缓存,AD 数据不受影响。
  2. 旧票据里仍带着旧组 SID,清理后重新申请票据才会包含新组成员关系。
  3. 先 klist sessions 找到对应 LogonId,再以管理员运行 klist -li <LogonId>。
微信小程序码:扫码打开命令速查小程序

小程序版

微信扫码,随时查命令