cmdkey 是干什么的
cmdkey 是“凭据管理器”的命令行版本,用来列出、添加和删除 Windows 保存的凭据:网络共享凭据、远程桌面“记住我”、以及部分应用的登录信息。排查“明明是正确密码却总提示凭据无效”“访问共享反复弹窗”“换了密码后同步一直失败”这类问题,第一步就是看保存了哪些旧凭据。
基本信息
| 适用平台 | Windows 全版本 CMD 命令 |
|---|---|
| 列出 | cmdkey /list(加 /list:目标 只看一项) |
| 添加 | cmdkey /add:目标 /user:账号 /pass |
| 删除 | cmdkey /delete:目标 |
| 权限 | 操作用户自己的凭据普通用户即可;查看其他用户凭据需管理员 |
典型使用场景
- 共享访问报凭据错误:删除旧凭据后重新输入正确密码
- 改了密码但同步/备份任务一直失败:任务里存的旧凭据需要更新
- 批量部署映射盘:在登录脚本里预置凭据,减少用户手动输入
- 交接与离职清理:清除机器上残留的他人凭据
- 排查 RDP 反复提示密码:确认是否保存了指向旧主机的凭据
常用示例
常用示例
:: 列出本机保存的所有凭据(目标名与用户名,不含明文密码)
cmdkey /list
:: 只看指向某台服务器的凭据
cmdkey /list:fileserver
:: 添加凭据(不给 /pass 值时会交互输入,避免明文进历史)
cmdkey /add:fileserver /user:CONTOSO\svc-backup /pass
:: 删除凭据(改密码后必须做这一步)
cmdkey /delete:fileserver
:: 图形界面核对:控制面板 → 凭据管理器 → Windows 凭据
control /name Microsoft.CredentialManager常见目标名形态
| 目标名写法 | 适用访问方式 | 说明 |
|---|---|---|
| fileserver | \\fileserver\share | 机器名访问 |
| 10.0.0.20 | \\10.0.0.20\share | IP 访问必须按 IP 建凭据 |
| TERMSRV/web01 | 远程桌面连接 | RDP 保存的凭据 |
| Domain:target=... | 部分应用与浏览器 | 按应用注册的目标标识 |
凭据按“目标名”严格匹配:用机器名建的凭据不会在你用 IP 访问时生效。这是在共享访问里最容易踩的坑,遇到反复弹窗先核对当前访问用的是哪种写法。
不要在命令行里直接写明文密码:/pass 后面不带值让系统交互提示,或者由脚本从受保护的位置读取。命令行明文会进入命令历史、进程信息与审计日志。
凭据管理器里的内容按用户隔离:在服务账户下运行的任务与在交互用户下运行的脚本看到的是两套凭据。任务跑在哪个身份下,就要在那个身份下核对凭据。