当前位置: 首页 > news >正文

.NET 磁盘Bitlocker加密-Powershell操作

Windows我们使用BitLocker对磁盘进行加密,公共PC以及硬盘存在插拔移动使用,可以考虑这个方案

比如右键盘符E-启用BitLocker,在下面窗口内输入密码对E盘进行加密

image

加密后,每次开机以及插入,使用E盘均需要输入密钥进行解密。

下面我们使用.NET实现对Bitlocker的操作

启用BitLocker

Windows点击启用BitLocker,这个操作

image

使用Powershell命令,可以拆解为以下操作:

// 1. 添加用户密码(相当于用户输入的解锁密码)
Add-BitLockerKeyProtector -PasswordProtector -Password $pwd// 2. 启用加密 + 生成恢复密钥(相当于系统强制要求备份恢复密钥)
Enable-BitLocker -RecoveryPasswordProtector

虽然Windows 安全策略要求:在启用 BitLocker 加密之前,必须至少有一个恢复机制。这是为了防止用户忘记密码后完全无法访问数据。

但我试了下,先启用BitLocker、再添加密码保护器,也是可以的。有需要的可以参考下,

 1     public OperateResult EnableBitLocker(string mountPath, string password)
 2     {
 3         if (mountPath.EndsWith("\\"))
 4         {
 5             mountPath = mountPath.TrimEnd('\\');
 6         }
 7 
 8         // 添加密码保护器
 9         var addPasswordScript = $@"
10             $securePassword = ConvertTo-SecureString '{password}' -AsPlainText -Force
11             Add-BitLockerKeyProtector -MountPoint '{mountPath}' -PasswordProtector -Password $securePassword
12         ";
13         var addPasswordResult = PowerShellUtils.ExecScript(addPasswordScript);
14         if (!addPasswordResult.Success && addPasswordResult.Message.Contains(password))
15         {
16             return addPasswordResult;
17         }
18 
19         // 使用恢复密码保护器启用BitLocker
20         var enableScript = $@"Enable-BitLocker -MountPoint '{mountPath}' -EncryptionMethod XtsAes256 -UsedSpaceOnly -RecoveryPasswordProtector -Confirm:$false";
21         var enableResult = PowerShellUtils.ExecScript(enableScript);
22         if (!enableResult.Success)
23         {
24             return enableResult;
25         }
26 
27         return OperateResult.ToSuccess();
28     }

以上mountPath可以是盘符O:,也可以是VHDX的挂载目录如E:\test\vhdx0209

启用BitLocker相当于给你的设备设置了一个密码,后续需要使用时通过这个密码解锁才能使用

解锁BitLocker

每次设备加载(开机、拔插、Vhdx加载等)后,均需要进行BitLocker解锁才能打开设备

先查询锁定状态,

image

Powershell查询,

 1     public OperateResult<LocalBitLockerVolume> GetBitLocker(string mountPath)
 2     {
 3         if (mountPath.EndsWith("\\"))
 4         {
 5             mountPath = mountPath.TrimEnd('\\');
 6         }
 7         var script = $"Get-BitLockerVolume -MountPoint '{mountPath}'";
 8         var result = PowerShellUtils.ExecScriptToDataList<LocalBitLockerVolume>(script);
 9         var operateResult = result.ToResult<LocalBitLockerVolume>();
10         operateResult.Data = result.Data?.FirstOrDefault();
11         return operateResult;
12     }

LocalBitLockerVolume.LockStatus属性,0表示已解锁,1表示锁定

盘符被锁定的状态:

image

 解锁BitLocker,有需要的可以参考:

 1     public OperateResult<List<LocalBitLockerVolume>> UnlockBitLocker(string mountPath, string password)
 2     {
 3         if (mountPath.EndsWith("\\"))
 4         {
 5             mountPath = mountPath.TrimEnd('\\');
 6         }
 7         var script = $"Unlock-BitLocker -MountPoint '{mountPath}' -Password (ConvertTo-SecureString '{password}' -AsPlainText -Force)";
 8         var result = PowerShellUtils.ExecScriptToDataList<LocalBitLockerVolume>(script);
 9         return result;
10     }

已解锁的状态:

image

 以上是常用的几个BitLocker操作命令,更多的可以看看官网文档 BitLocker Module | Microsoft Learn

http://www.jsqmd.com/news/362905/

相关文章:

  • 五大头部“甲方”谈:我们需要怎样的具身智能? - 科技行者
  • 宝塔面板错误
  • 从80万到7000万:揭秘短线交易翻倍的十大黄金法则+成交量+关键点位+仓位管理的终极战法! - Leone
  • 【毕业设计】基于springboot的影院购票系统的设计与开发(源码+文档+远程调试,全bao定制等)
  • 12.74亿元投向泰国:深南电路高端PCB工厂连线后的爬坡考验
  • CoreWeave推出真实环境测试实验室验证AI生产就绪性
  • Claude Sonnet 5即将发布:从“工作助手“到“AI同事“的进化之路(使用攻略见评论区)
  • Java计算机毕设之基于springboot+Java的电影院售票管理系统基于springboot的影院购票系统的设计与开发(完整前后端代码+说明文档+LW,调试定制等)
  • 大模型项目从零到一落地(超全),收藏这一篇就够了!
  • 2026年ups租赁公司权威推荐:ups不间断电源租赁/ups电源租赁厂家/出租ups电源/出租发电机电话/选择指南 - 优质品牌商家
  • 【计算机毕业设计案例】基于springboot的影院购票系统的设计与开发基于springboot+Java的电影院售票管理系统(程序+文档+讲解+定制)
  • Python基于Django的私厨服务平台 私人厨房厨师管理系统
  • 光伏+电池混合系统玩转多模式控制
  • 解锁智能虚拟活动管理系统,AI应用架构师有妙招
  • 纽约州考虑推出两项法案以规范AI产业发展
  • 【Linux高级篇】Linux内存与磁盘IO排查指南:free/df/iostat命令吃透,告别运维卡顿难题
  • 机械革命笔记本的Windows11 蓝屏排查:从硬件到系统的完整诊断方案
  • 2026年耐酸磁力泵公司权威推荐:安徽磁力泵/氟合金化工泵/氟合金磁力泵/氟塑料化工泵/氟塑料磁力泵/选择指南 - 优质品牌商家
  • 【Linux高级篇】新手也能上手的Shell核心语法:变量、循环、判断,一篇吃透
  • brew 安装完全指南:多系统适配与国内源配置技巧
  • springboot基于Java的植物养护系统
  • 2026西南除甲醛优质服务商推荐榜:室内空气治理、室内除甲醛、成都甲醛检测、成都甲醛治理公司收费选择指南 - 优质品牌商家
  • 国产高光谱成像系统崛起:领先品牌、靠谱公司及质量口碑大揭秘 - 品牌推荐大师
  • 从模型评估、梯度难题到科学初始化:一步步解析深度学习的训练问题
  • Agent Skills配置全攻略,让你的大模型Agent告别“智障“
  • 2026可靠工商代办公司品牌推荐指南:专业代理记账公司/中小企业代理记账/代理记账公司哪家好/选择指南 - 优质品牌商家
  • 15分钟教会AI记住你的工作方式,Agent Skills完全指南
  • 23.测试
  • 基于IEEE33节点配电网仿真,融合风光储能的经济调度模型与粒子群优化算法
  • 2026四川单招培训优质机构推荐榜高公办上岸率:首创单招和融创单招那个更好、首创单招培训怎么样选择指南 - 优质品牌商家