如何编写CMD脚本将BitLocker数字密码ID保存到Active Directory
解决BitLocker数字密码ID自动提取并备份到AD的批处理方案
报错原因
- 你代码里的
<numericalpassword>是手动占位符,系统无法自动识别替换,需要先从manage-bde的查询结果中提取到C盘对应的数字密码ID值,再传入备份命令。 - 原代码还有参数错误:
-id是删除密钥保护器的参数,备份恢复密码到AD需要用-adbackup参数。
修正后的完整批处理代码
@echo off setlocal enabledelayedexpansion title BitLocker 恢复密码备份到AD echo 正在执行BitLocker恢复密码备份到ActiveDirectory操作,请稍候... pause :: 提取C盘数字密码对应的ID值 for /f "tokens=2 delims=:" %%a in ('manage-bde -protectors -get c: ^| findstr /i "ID:" ^| findstr /i "数字密码"') do ( set "num_id=%%a" :: 去除ID前后的空格 set "num_id=!num_id: =!" ) if not defined num_id ( echo 错误:未检测到C盘的BitLocker数字密码,请确认C盘已启用BitLocker加密 pause exit /b 1 ) :: 执行备份到AD的命令 echo 提取到的数字密码ID为:!num_id! manage-bde -protectors c: -adbackup !num_id! if !errorlevel! equ 0 ( echo 操作成功:BitLocker恢复密码已成功备份到AD ) else ( echo 操作失败:备份到AD时出错,请确认当前账号拥有域管理员权限或对应设备对象的写入权限 ) echo. echo 输入1按回车键退出 set "input=" set /p "input=请输入选择: " if "!input!"=="1" exit /b 0 endlocal
注意事项
- 运行该批处理需要右键选择「以管理员身份运行」
- 执行设备必须已加入域,且运行账号拥有将BitLocker恢复信息写入AD对象的权限
内容的提问来源于stack exchange,提问作者Nepal Emily Asserat
相关产品推荐
相关产品推荐

