表題の通り、今月のWindowsの月例のパッチ適用後に、PC起動時にBitLockerの回復キー入力を求められる事象が発生するケースが起こっているようです。
自分の会社でも該当の事象が発生し、いつものとおり回復キー入力画面に書いてある回復キーIDから、MBAM(Malwarebytes’ Anti-Malware)で回復キーを参照しようと思ったのですが。「無効なキーID」と表示され参照が不可に。
その後、他の方法はないかと、BIOSの設定を変えてみたりと色々いじってみたのですが、やはり回復キー入力画面はスキップできず。
さらに調べてみると、ActiveDirectoryのComputerからキーを取得する方法がありましたので、試したところうまくいきました。
おそらく、同じような問題で現在悩まれている方もいると思うので、対処方法について備忘録もかねて記載しておきます。
作業環境:
Windows11 Pro 22H2, Pavilion Aero
ステップ1:スクリプトを準備する
-
テキストエディタを開き、以下の通りコードを入力する※2行目のOU部分と、4行目のcsvの保存先のパスを、それぞれ実行環境に応じて変更してください。
# Set the AD target OU $computers = Get-ADComputer -Filter * -SearchBase "OU=yourou2,OU=yourou1,DC=yourdomain,DC=local" # Set the absolute path to the output CSV file $csvPath = "C:\temp\bitlocker-list.csv" # Declare an output array to store data $output = @() # Declare CSV headers $output += "HostName, RecoveryPassword" # Loop over computers, check if BitLocker is stored foreach ($computer in $computers) { # Fetch the msFVE-RecoverInfo object and sort by creation date to make sure the latest key is fetched $fetch = $(Get-ADObject -Filter {objectclass -eq 'msFVE-RecoveryInformation'} -SearchBase $computer.DistinguishedName -Properties 'msFVE-RecoveryPassword',whencreated | Sort-Object WhenCreated -Descending).'msFVE-RecoveryPassword' # If blank, write "BitLocker not active" to the data object. if (-Not $fetch) { $output += ($computer.Name,"BitLocker not active") -join "," } # If more than one key, fetch the first (will be the newest). elseif ($fetch.Count -gt 1) { $output += ($computer.Name, $fetch[0]) -join "," } # If single key, fetch it. else { $output += ($computer.Name, $fetch) -join "," } } # Export output to CSV $output | Out-File -FilePath $csvPath
- 任意のファイル名を付け、拡張子を.ps1(Powershellスクリプト)として保存する
ステップ2:Powershellでスクリプトを実行する
- Powershellデスクトップアプリを管理者として起動し、スクリプトがある場所へ移動する
- スクリプトファイルのある場所へ移動し、スクリプトを実行する
※移動先フォルダ、ファイル名は自分で設定した環境に合わせて修正してください。
PowerShell 7.4.3 A new PowerShell stable release is available: v7.4.4 Upgrade now, or check out the release page at: https://aka.ms/PowerShell-Release?tag=v7.4.4 PS C:\Users\yourusername> cd c:\yourfolder PS C:\data> .\yourscriptfile.ps1 PS C:\data>
※実行例
ステップ3:生成されたcsvファイルを確認する
Powershell上でエラーが出る場合は、管理者権限で実行されていることを確認してください。
おまけ
回復キーIDを写真で受け取った場合に入力が面倒ですが、実はいつのまにかsnipping toolで画像のテキスト化ができるようになっていました。こちらもやり方を記事にしますのでよかったら見てみてください。
コメント