Многие компании используют преимущества функции шифрования дисков Microsoft BitLocker, встроенной в Windows Vista, Windows Server 2008 и последующие версии Windows. Чтобы зашифрованные диски были доступны для имеющих соответствующие полномочия сотрудников компании, разработчики Microsoft обеспечили возможность резервного копирования информации восстановления для BitLocker в Active Directory (AD). Дополнительные сведения можно найти в документации Backing Up BitLocker and TPM Recovery Information to AD DS (http://technet.microsoft.com/en-us/library/dd875529.aspx) на сайте TechNet.

Получение информации восстановления для BitLocker из графического интерфейса

Чтобы упростить управление компьютерами с включенной функцией шифрования BitLocker, компания Microsoft предоставила администраторам средство просмотра пароля восстановления BitLocker (http://technet.microsoft.com/en-us/library/dd875531.aspx). Этот инструмент (доступный в числе средств удаленного администрирования сервера) добавляет два элемента на консоль Active Directory Users and Computers («Пользователи и компьютеры Active Directory, ADUC»): вкладку BitLocker Recovery («Восстановление BitLocker») на странице свойств компьютера и пункт Find BitLocker Recovery Password («Поиск пароля восстановления BitLocker) в контекстном меню объекта домена. На экране 1 показана вкладка BitLocker Recovery для объекта-компьютера.

 

Вкладка BitLocker Recovery для объекта-компьютера
Экран 1. Вкладка BitLocker Recovery для объекта-компьютера

Информация восстановления для BitLocker хранится в одном или нескольких дочерних объектах msFVE-RecoveryInformation (то есть объект-компьютер — родитель объекта msFVE-RecoveryInformation). Вы можете просматривать эти объекты AD, используя консоль редактирования ADSI Edit (adsiedit.mmc) и перейдя к объекту-компьютеру, как показано на экране 2. На экранах 1 и 2 мы видим два различных представления информации восстановления для BitLocker для одного объекта-компьютера.

 

Просмотр объектов msFVE-RecoveryInformation на консоли ADSI Edit
Экран 2. Просмотр объектов msFVE-RecoveryInformation на консоли ADSI Edit

Если вам необходим доступ к зашифрованному с помощью BitLocker диску, Windows отображает идентификатор пароля при загрузке. Чтобы найти пароль восстановления, связанный с идентификатором пароля, щелкните объект домена правой кнопкой мыши на консоли Active Directory Users and Computers и выберите Find BitLocker recovery password (см. экран 3).

 

Поиск пароля восстановления BitLocker
Экран 3. Поиск пароля восстановления BitLocker

На экране 4 показано диалоговое окно поиска пароля восстановления BitLocker. Введите первые восемь символов идентификатора пароля BitLocker, и в окне отобразится пароль восстановления.

 

Диалоговое окно поиска пароля восстановления BitLocker
Экран 4. Диалоговое окно поиска пароля восстановления BitLocker

К сожалению, эти функции работают только из консоли ADUC, и Microsoft не предоставила эквивалентных команд PowerShell.

Получение информации восстановления для BitLocker из PowerShell

Компания Microsoft не предоставляет команд PowerShell для средства просмотра пароля восстановления BitLocker. На такой случай я подготовил сценарий the Get-BitLockerRecovery.ps1 (его можно найти по ссылке: https://gist.github.com/morisy/5b99e763d6b72f9b3e7c1747b6d0a1ee). Синтаксис сценария следующий:

Get-BitLockerRecovery [-Name] 
   [-Domain ] [-Server ]
   [-Credential ]

или

Get-BitLockerRecovery -PasswordID 
   [-Domain ] [-Server ]
   [-Credential ]

В сценарии используются два набора параметров, определяющих его работу.

  • Если указан список, содержащий одно или несколько имен компьютеров, сценарий показывает информацию восстановления BitLocker для соответствующих компьютеров. Параметр -Name соответствует просмотру свойств объекта-компьютера и выбору вкладки BitLocker Recovery на консоли ADUC. Параметр -Name предполагается сценарием по умолчанию, поэтому указывать его не обязательно.
  • Если указан параметр -PasswordID, то необходимо ввести вместо имени восьмисимвольный идентификатор пароля. Параметр -PasswordID соответствует команде поиска пароля восстановления BitLocker (Find BitLocker recovery password) при щелчке правой кнопкой мыши на объекте домена на консоли ADUC.

Параметр -Domain указывает имя домена, если компьютеры находятся вне текущего домена, а параметр -Server задает имя конкретного контроллера домена, из которого нужно получить информацию восстановления для BitLocker.

По умолчанию только члены группы администраторов домена имеют доступ для просмотра информации восстановления для BitLocker, поэтому, если запустить Get-BitLockerRecovery.ps1 из учетной записи, не имеющей достаточных прав доступа, то сценарий выдаст значение N/A («Неприменимо») для свойств TPMRecoveryInformation, Date, PasswordID и RecoveryPassword. Это препятствие можно обойти, запустив сеанс PowerShell из другой учетной записи, имеющей разрешения, или воспользоваться параметром -Credential и указать другие учетные данные.

Сценарий выводит объекты со свойствами, приведенными в таблице.

 

Свойства выходного объекта сценария Get-BitLockerRecovery.ps1

В дополнение к имени компьютера, идентификатору пароля и паролю восстановления, сценарий Get-BitLockerRecovery.ps1 предоставляет свойства distinguishedName и TPMRecoveryInformation. Свойство distinguishedName помогает определить расположение объекта-компьютера в AD, а свойство TPMRecoveryInformation позволяет выяснить, выполнено ли архивирование информации восстановления для TPM компьютера в AD. На экране 5 показан пример выходного объекта.

 

Пример выходного объекта Get-BitLockerRecovery.ps1
Экран 5. Пример выходного объекта Get-BitLockerRecovery.ps1

Примеры команд

1. Получение информации восстановления для BitLocker для одного компьютера:

Get-BitLockerRecovery computer1

2. Получение информации восстановления для BitLocker для списка компьютеров:

Get-BitLockerRecovery
   "computer1","computer2"

или

"computer1","computer2" |
   Get-BitLockerRecovery

3. Получение информации восстановления для BitLocker для компьютеров в организационном подразделении (OU):

Get-ADComputer -Filter { name -like "*" } `
  -SearchBase "OU=Sales,DC=fabrikam,
  DC=com" |
  Get-BitLockerRecovery

4. Получение информации восстановления для BitLocker для конкретного идентификатора пароля:

Get-BitLockerRecovery -PasswordID
   B1FED823

5. Получение информации восстановления для BitLocker для всех объектов msFVE-RecoveryInformation в текущем домене:

$filter = "(objectClass=msFVE-
  RecoveryInformation)"
Get-ADObject -LDAPFilter $filter |
  ForEach-Object {
  Get-ADPathname (Get-ADPathname
  $_.DistinguishedName `
  -Format X500Parent) -Format Leaf
  -ValuesOnly |
  Get-BitLockerRecovery
}

Эта команда зависит от сценария Get-ADPathname.ps1, который можно найти по ссылке в моей статье «Обработка путей Active Directory с помощью PowerShell» (опубликована в журнале Windows IT Pro/RE № 12 за 2013 год). Она извлекает родительский путь каждого объекта msFVE-RecoveryInformation (то есть все объекты-компьютеры, которые имеют дочерние объекты msFVE-RecoveryInformation), получает конечный элемент пути каждого из них (только значения, то есть только имена компьютеров без префикса CN=) и передает имя каждого компьютера в сценарий Get-BitLockerRecovery.ps1.

Информация восстановления для BitLocker без графического интерфейса

Средство просмотра пароля восстановления BitLocker — важный инструмент, но работает он только на консоли «Пользователи и компьютеры Active Directory». Используйте сценарий BitLockerRecovery.ps1 (https://gist.github.com/morisy/5b99e763d6b72f9b3e7c1747b6d0a1ee), чтобы обойти это ограничение и получить информацию восстановления для BitLocker из командной строки PowerShell.