Precisamos impor a criptografia em repouso em um LUN iSCSI acessível a partir de uma máquina virtual Hyper-V.
Implementamos uma solução de trabalho usando o BitLocker, usando o Windows Server 2012 em um servidor virtual Hyper-V que tem acesso iSCSI a um LUN em nossa SAN. Conseguimos fazer isso usando o hack "armazenamento de chaves de disquete", conforme definido em ESTE POST . No entanto, este método parece "piegas" para mim.
Em minha pesquisa contínua, descobri que a equipe de TI corporativa da Amazon publicou um WHITEPAPER que delineou exatamente o que eu estava procurando em uma solução mais elegante, sem o "disquete de disquete". Na página 7 deste white paper, eles afirmam que implementaram o Gerenciamento de chave de criptografia do Windows DPAPI para gerenciar com segurança suas chaves do BitLocker. Isso é exatamente o que eu estou procurando fazer, mas eles disseram que tinham que escrever um script para fazer isso, mas eles não fornecem o script ou até mesmo qualquer ponte sobre como criar um.
Alguém tem detalhes sobre como criar um script "em conjunto com um serviço e um arquivo de armazenamento de chaves protegido pela chave DPAPI da conta de máquina do servidor" (como eles indicam no informe oficial) para gerenciar e desbloquear automaticamente volumes do BitLocker? Qualquer conselho é apreciado.
--- EDITAR 1 ---
Com base na resposta de Evan abaixo, aqui está o que eu descobri, mas ainda estou presa.
Eu assumo que usando PsExec e executando o seguinte comando, que O PowerShell está sendo executado na conta do sistema e "criptografará a string com a senha da conta da máquina", conforme Evan afirmou. Está correto?
PsExec.exe -i -s Powershell.exe
Depois, a partir do PS, (usando este post como referência) Eu corro este comando para gerar a senha do SecureString:
ConvertTo-SecureString -String "MyBitLockerPassword" -AsPlainText –Force | ConvertFrom-SecureString | Out-File C:\securestring.txt
Isso me dá um arquivo contendo a string segura no formato “01000000d08c…” (um total de 524 caracteres). Então, agora posso criar uma Tarefa Agendada para ser executada na inicialização que usa o seguinte para carregar a senha (como um SecureString) e passá-la para o Comando Unlock-BitLocker :
$SecureBitLockerPassword = Get-Content C:\securestring.txt | ConvertTo-SecureString
Unlock-BitLocker -MountPoint "E:" -Password $ SecureBitLockerPassword
No entanto, se eu estiver simplesmente armazenando a senha criptografada como um arquivo no disco rígido, qual é o objetivo da criptografia e da descriptografia da senha? Isso não seria tão inseguro quanto armazenar a senha em texto simples e usar o seguinte (sem a necessidade de criar o arquivo de string seguro)?
$SecureString = ConvertTo-SecureString " MyBitLockerPassword " -AsPlainText –Force
Unlock-BitLocker -MountPoint "E:" -Password $SecureString
De que outra forma você abordaria isso? Onde eu poderia armazenar a chave SecureString de modo que somente a conta do sistema pudesse acessá-la?