Nesta página, você conhecerá os principais conceitos e a terminologia da VM protegida. Para começar a usar a VM protegida, consulte o guia de início rápido ou consulte Como modificar as opções de VM protegida.
A VM protegida oferece uma integridade verificável das instâncias de VM do Compute Engine. Assim, você tem a garantia de que elas não foram comprometidas por malwares ou por rootkits no nível do kernel ou da inicialização.
Principais benefícios das VMs protegidas
As VMs protegidas oferecem várias vantagens estratégicas, como proteção abrangente contra ataques no nível do firmware, modificações no carregador de inicialização e comprometimentos no nível do kernel.
Benefícios operacionais:incluem redução do tempo de resposta a incidentes de segurança, simplificação do gerenciamento de compliance e maior visibilidade da integridade do sistema.
Vantagens para os negócios:incluem mais confiança na infraestrutura em nuvem, redução do risco de violações de segurança e melhoria da postura de compliance regulatório.
Arquitetura de segurança principal das VMs protegidas
As VMs protegidas implementam uma arquitetura de proteção tripla. Essa arquitetura oferece proteção robusta desde o início, conforme descrito na tabela a seguir.
| Recurso | O que é | Como isso ajuda |
|---|---|---|
| Tecnologia de inicialização segura | Um recurso de firmware UEFI que garante que a VM seja inicializada apenas com
software autêntico e assinado. Para isso, ele verifica a assinatura digital de todos os
componentes de inicialização, como drivers de firmware, carregador de inicialização do SO e kernel.
Para mais informações, consulte Inicialização segura. |
Impede o carregamento de bootloaders e kernels não autorizados ou adulterados, interrompendo muitos bootkits e rootkits. Interrompe o processo de inicialização se um componente não tiver uma assinatura confiável. |
| Módulo virtual de plataforma confiável (vTPM) | Um processador de segurança virtualizado, fornecendo a cada VM protegida
um vTPM dedicado para segurança no nível do hardware.
Para mais informações, consulte Módulo de plataforma virtual confiável (vTPM). |
Oferece os seguintes recursos:
|
| Monitoramento avançado de integridade | Um sistema de monitoramento que estabelece um valor de referência ideal de medições de inicialização feitas durante a inicialização medida.
Para mais informações, consulte Monitoramento de integridade. |
Compara as medições de inicialização atuais com o valor de referência confiável em inicializações subsequentes. Gera alertas no Cloud Logging e no Security Command Center se detectar discrepâncias, permitindo a investigação proativa de possíveis violações de integridade. |
Inicialização segura
A Inicialização segura ajuda a garantir que o sistema execute apenas um software autêntico por meio da verificação da assinatura digital de todos os componentes de inicialização e da interrupção do processo de inicialização se a verificação da assinatura falhar.
As instâncias VM protegida executam o firmware UEFI criado pelo Google. Como uma camada adicional de segurança e de acordo com as práticas padrão do Google para todos os softwares de produção, esse firmware é assinado e verificado criptograficamente usando a autoridade de certificação interna do Google. Essa validação é feita em todos os firmwares, independente de o recurso de inicialização segura estar ativado. Essa verificação garante a integridade do firmware, confirmando que ele é autêntico e não modificado, e estabelece a raiz de confiança para a inicialização segura.
O firmware Interface de Firmware Extensível Unificada (UEFI, na sigla em inglês) 2.3.1 gerencia com segurança os certificados que contêm as chaves usadas pelos fabricantes de software para assinar o firmware do sistema, o carregador de inicialização do sistema e todos os binários que eles carregam. As instâncias de VM protegidas usam o firmware UEFI.
Em cada inicialização, o firmware UEFI verifica a assinatura digital de cada componente de inicialização em relação às chaves aprovadas armazenadas com segurança. Qualquer componente de inicialização que não esteja devidamente assinado ou que simplesmente não tenha sido assinado não poderá ser executado.
Se isso ocorrer, o registro do console serial da instância de VM terá as entradas UEFI: falha ao carregar imagem e Status: violação de segurança, além de uma descrição da opção de inicialização que falhou. Para solucionar essa falha, desative a Inicialização segura seguindo as instruções em Como modificar as opções da VM protegida para poder inicializar a instância de VM e diagnosticar e resolver o problema. Em seguida, reative a Inicialização segura.
Módulo de plataforma confiável virtual (vTPM)
Um vTPM ou módulo de plataforma confiável (em inglês) virtualizado é um ícone de computador especializado que pode ser usado para proteger objetos, como chaves e certificados, utilizados para autenticar o acesso ao sistema. O vTPM da VM protegida é totalmente compatível com a especificação 2.0 da biblioteca do Trusted Computing Group (TPM) e usa a biblioteca BoringSSL. A biblioteca BoringSSL depende do módulo BoringCrypto. Para ver detalhes do FIPS 140-2 sobre o módulo BoringCrypto, consulte o Certificado de programa de validação do módulo de criptografia NIST 3678.
O vTPM da VM protegida ativa a Inicialização medida executando as medições necessárias para criar um valor de referência de inicialização válido, chamado valor de referência da política de integridade. O valor de referência da política de integridade é comparado com as medidas das inicializações subsequentes da VM para verificar se algo mudou.
Também é possível usar o vTPM para proteger chaves secretas por meio de blindagem ou bloqueio. Consulte o projeto Go-TPM (em inglês) nos exemplos de linguagem do GitHub para Go, que mostram como usar um vTPM para essa finalidade.
Inicialização medida
Durante a Inicialização medida, um hash de cada componente (por exemplo, o firmware, carregador de inicialização ou kernel) é criado ao carregar o componente. Esse hash é então concatenado e refeito com os hashes de quaisquer componentes que já tenham sido carregados, como ilustrado aqui:

Essas informações identificam os componentes que foram carregados e a ordem de carregamento.
Na primeira vez que você inicializa uma instância de VM, a Inicialização medida cria a linha de base da política de integridade a partir do primeiro conjunto dessas medidas e armazena esses dados com segurança. Cada vez que a instância da VM é inicializada depois disso, essas medidas são registradas novamente e armazenadas na memória segura até a próxima reinicialização. Ter esses dois conjuntos de medidas permite o monitoramento de integridade, que você pode usar para determinar se houve alterações na sequência de inicialização de uma instância de VM.
Monitoramento de integridade
O monitoramento de integridade ajuda a entender e tomar decisões sobre o estado das suas instâncias de VM.
O monitoramento de integridade depende das medidas criadas pela Inicialização segura, que usa registros de configuração de plataforma (PCRs, na sigla em inglês) para armazenar informações sobre os componentes e a ordem de carregamento dos componentes da linha de base da política de integridade (uma sequência de inicialização válida conhecida) e a sequência de inicialização mais recente.
O monitoramento de integridade compara as medidas de inicialização mais recentes com a linha de base da política de integridade e retorna um par de resultados de aprovação ou reprovação, dependendo da correspondência ou não deles, um com a primeira sequência de inicialização e o outro com a sequência de inicialização atrasada. A inicialização antecipada é a sequência que vai desde quando o firmware UEFI é iniciado até o momento em que ele passa o controle para o carregador de inicialização. A inicialização posterior é a sequência que vai desde o carregador de inicialização até o momento em que ele transmite o controle para o kernel do sistema operacional. Se alguma parte da sequência de inicialização mais recente não corresponder à linha de base, você receberá uma falha de validação de integridade.
Se a falha for esperada, por exemplo, se você aplicou uma atualização do sistema nessa instância da VM, atualize o valor de referência da política de integridade. A atualização da linha de base da política de integridade define a linha de base para as medidas capturadas da sequência de inicialização mais recente. Se a falha não for esperada, pare a instância da VM e investigue o motivo.
É possível ver os relatórios de integridade no Cloud Monitoring e definir alertas sobre falhas de integridade. Também é possível analisar os detalhes dos resultados de monitoramento de integridade no Cloud Logging. Para mais informações, consulte Como monitorar a integridade em VM protegida protegidas.
Eventos de monitoramento de integridade
A VM protegida cria entradas de registro para os seguintes tipos de evento:
clearTPMEvent: identifica se o vTPM foi apagado, o que exclui as chaves secretas armazenadas nele. Isso não afeta nenhum aspecto da VM protegida. Assim, você só se importará com esse evento se usar o vTPM para proteger dados confidenciais conforme descrito no Módulo de plataforma confiável virtual (vTPM, na sigla em inglês).earlyBootReportEvent: identifica se a verificação de integridade da sequência de inicialização antecipada foi aprovada, além de fornecer detalhes sobre os valores de PCR do valor de referência e da sequência de inicialização mais recente, que foram comparados para gerar essa determinação.lateBootReportEvent: identifica se a verificação de integridade da sequência de inicialização atrasada foi aprovada, além de fornecer detalhes sobre os valores de PCR do valor de referência e da sequência de inicialização mais recente, que foram comparados para gerar essa determinação.setShieldedInstanceIntegrityPolicy: registrado toda vez que você atualiza o valor de referência da política de integridade.shutdownEvent: registrado toda vez que a instância de VM é interrompida.startupEvent: registrado toda vez que a instância de VM é iniciada. A informação interessante nesse evento é o valorbootCounter, que identifica quantas vezes essa instância foi reiniciada.updateShieldedInstanceConfig: registrado toda vez que você ativa ou desativa uma das opções de VM protegida.
A progressão de eventos típica que você vê nos registros é startupEvent, earlyBootReportEvent, lateBootReportEvent e, por fim, shutdownEvent, todos com o mesmo valor bootCounter para identificar que descrevem a mesma sequência de inicialização da instância de VM.
Se você atualizar o valor de referência da política de integridade em resposta a uma falha de integridade esperada em uma instância de VM, verá outros eventos earlyBootReportEvent e lateBootReportEvent que descrevem os novos valores de referência da política de integridade. O exemplo a seguir mostra a sequência esperada:
startupEventearlyBootReportEventque compara o valor de referência original com a sequência de inicialização mais recente (aprovada)lateBootReportEventque compara o valor de referência original com a sequência de inicialização mais recente (reprovada)setShieldedInstanceIntegrityPolicyquando você atualiza o valor de referência da política de integridade, que define o valor de referência para as medidas capturadas da última sequência de inicialização.earlyBootReportEventque compara um novo valor de referência com uma sequência de inicialização mais recente (aprovada)lateBootReportEventque compara um novo valor de referência com uma sequência de inicialização mais recente (aprovada)
Windows
earlyBootReportEvent
earlyBootReportEvent contém as seguintes seções e elementos:
actualMeasurements: contém os valores do registro de configuração da plataforma (PCR, na sigla em inglês) para a sequência de inicialização mais recente (link em inglês). Os valores de PCR identificam os componentes de inicialização e a ordem de carregamento dos componentes usados pela sequência de inicialização mais recente. Eles são comparados com o valor de referência da política de integridade, capturados na seçãopolicyMeasurements, para determinar se houve mudança na sequência de inicialização da instância da VM. Os elementos da seçãoactualMeasurementspodem variar de acordo com o SO, a distribuição e a configuração. A seção normalmente inclui os elementos a seguir:0: contém o valor de PCR0, com informações sobre componentes de firmware e a tecnologia de criptografia de memória ativa. Esse PCR diverge do perfil de firmware da plataforma PCClient do TCG porque mede apenas os seguintes eventos:EV_S_CRTM_VERSION, a versão do firmware do Compute EngineEV_NONHOST_INFO, representando a tecnologia de criptografia de memóriaEV_SEPARATOR, o firmware do evento de delimitador especificado mede quando não haverá mais eventos PCR0. Isso significa que o PCR0 tem um valor estático para todo o ciclo de vida de uma VM. O valor só muda para novas VMs após atualizações importantes do firmware da versão ou mudança na tecnologia de criptografia. Ele não é usado na validação da sequência de inicialização mais recente, em relação aos valores de referência da política de integridade.
1: contém o valor de PCR4, com informações sobre o código do gerenciador de inicialização UEFI e as tentativas de inicialização.2: contém o valor de PCR5, com informações sobre a tabela de partição GUID do disco. Ele não é usado na validação da sequência de inicialização mais recente, em relação aos valores de referência da política de integridade.3: contém o valor de PCR7, com informações sobre a política de Inicialização segura da instância.
policyEvaluationPassed: identifica se determinada seção da sequência de inicialização foi aprovada na verificação, em relação aos valores de referência da política de integridade.policyMeasurements: contém os valores de referência de PCR que a validação de integridade usa como valores esperados. A seçãopolicyMeasurementspode variar com base no SO, na distribuição e na configuração, mas geralmente inclui os elementos a seguir:0: contém o valor de PCR0, com informações sobre componentes de firmware e a tecnologia de criptografia de memória ativa. Esse PCR diverge do perfil de firmware da plataforma PCClient do TCG porque mede apenas os seguintes eventos:EV_S_CRTM_VERSION, a versão do firmware do Compute EngineEV_NONHOST_INFO, representando a tecnologia de criptografia de memóriaEV_SEPARATOR, o firmware do evento de delimitador especificado mede quando não haverá mais eventos PCR0. Isso significa que o PCR0 tem um valor estático para todo o ciclo de vida de uma VM. O valor só muda para novas VMs após atualizações importantes do firmware da versão ou mudança na tecnologia de criptografia. Ele não é usado na validação da sequência de inicialização mais recente, em relação aos valores de referência da política de integridade.
1: contém o valor de PCR4, com informações sobre o código do gerenciador de inicialização UEFI e as tentativas de inicialização. Esse valor não está incluído na primeira inicialização.2: contém o valor de PCR7, com informações sobre a política de Inicialização segura da instância.
Para saber como usar valores de PCR earlyBootReportEvent para diagnosticar uma falha na validação da integridade de inicialização, consulte Como determinar a causa da falha de validação da integridade de inicialização.
lateBootReportEvent
lateBootReportEvent contém as seguintes seções e elementos:
actualMeasurements: contém os valores do registro de configuração da plataforma (PCR, na sigla em inglês) para a sequência de inicialização mais recente (link em inglês). Os valores de PCR identificam os componentes de inicialização e a ordem de carregamento dos componentes usados pela sequência de inicialização mais recente. Eles são comparados com o valor de referência da política de integridade, capturados na seçãopolicyMeasurements, para determinar se houve mudança na sequência de inicialização da instância da VM. Os elementos da seçãoactualMeasurementspodem variar de acordo com o SO, a distribuição e a configuração. A seção normalmente inclui os elementos a seguir:0: contém o valor de PCR0, com informações sobre componentes de firmware e a tecnologia de criptografia de memória ativa. Esse PCR diverge do perfil de firmware da plataforma PCClient do TCG porque mede apenas os seguintes eventos:EV_S_CRTM_VERSION, a versão do firmware do Compute EngineEV_NONHOST_INFO, representando a tecnologia de criptografia de memóriaEV_SEPARATOR, o firmware do evento de delimitador especificado mede quando não haverá mais eventos PCR0. Isso significa que o PCR0 tem um valor estático para todo o ciclo de vida de uma VM. O valor só muda para novas VMs após atualizações importantes do firmware da versão ou mudança na tecnologia de criptografia. Ele não é usado na validação da sequência de inicialização mais recente, em relação aos valores de referência da política de integridade.
1: contém o valor de PCR4, com informações sobre o código do gerenciador de inicialização UEFI e as tentativas de inicialização.2: contém o valor de PCR5, com informações sobre a tabela de partição GUID do disco. Ele não é usado na validação da sequência de inicialização mais recente, em relação aos valores de referência da política de integridade.3: contém o valor de PCR7, com informações sobre a política de Inicialização segura da instância.4: contém o valor de PCR11, com informações sobre o controle de acesso da criptografia de unidade de disco BitLocker.5: contém o valor de PCR12, com informações sobre eventos de dados. Ele não é usado na validação da sequência de inicialização mais recente, em relação aos valores de referência da política de integridade.6: contém o valor de PCR13, com informações sobre o kernel do Windows e os drivers de inicialização.7: contém o valor de PCR14, com informações sobre as autoridades de inicialização do Windows.
policyEvaluationPassed: identifica se determinada seção da sequência de inicialização foi aprovada na verificação, em relação aos valores de referência da política de integridade.policyMeasurements: contém os valores de referência de PCR que a validação de integridade usa como valores esperados. A seçãopolicyMeasurementspode variar com base no SO, na distribuição e na configuração, mas geralmente inclui os elementos a seguir:0: contém o valor de PCR0, com informações sobre componentes de firmware e a tecnologia de criptografia de memória ativa. Esse PCR diverge do perfil de firmware da plataforma PCClient do TCG porque mede apenas os seguintes eventos:EV_S_CRTM_VERSION, a versão do firmware do Compute EngineEV_NONHOST_INFO, representando a tecnologia de criptografia de memóriaEV_SEPARATOR, o firmware do evento de delimitador especificado mede quando não haverá mais eventos PCR0. Isso significa que o PCR0 tem um valor estático para todo o ciclo de vida de uma VM. O valor só muda para novas VMs após atualizações importantes do firmware da versão ou mudança na tecnologia de criptografia. Ele não é usado na validação da sequência de inicialização mais recente, em relação aos valores de referência da política de integridade.
1: contém o valor de PCR4, com informações sobre o código do gerenciador de inicialização UEFI e as tentativas de inicialização.2: contém o valor de PCR7, com informações sobre a política de Inicialização segura da instância.3: contém o valor de PCR11, com informações sobre o controle de acesso da criptografia de unidade de disco BitLocker.4: contém o valor de PCR13, com informações sobre o kernel do Windows e os drivers de inicialização.5: contém o valor de PCR14, com informações sobre as autoridades de inicialização do Windows.
Para saber como usar valores de PCR lateBootReportEvent para diagnosticar uma falha na validação da integridade de inicialização, consulte Como determinar a causa da falha de validação da integridade de inicialização.
Linux
earlyBootReportEvent
earlyBootReportEvent contém as seguintes seções e elementos:
actualMeasurements: contém os valores do registro de configuração da plataforma (PCR, na sigla em inglês) para a sequência de inicialização mais recente (link em inglês). Os valores de PCR identificam os componentes de inicialização e a ordem de carregamento dos componentes usados pela sequência de inicialização mais recente. Eles são comparados com o valor de referência da política de integridade, capturados na seçãopolicyMeasurements, para determinar se houve mudança na sequência de inicialização da instância da VM. Os elementos da seçãoactualMeasurementspodem variar de acordo com o SO, a distribuição e a configuração. A seção normalmente inclui os elementos a seguir:0: contém o valor de PCR0, com informações sobre componentes de firmware e a tecnologia de criptografia de memória ativa. Esse PCR diverge do perfil de firmware da plataforma PCClient do TCG porque mede apenas os seguintes eventos:EV_S_CRTM_VERSION, a versão do firmware do Compute EngineEV_NONHOST_INFO, representando a tecnologia de criptografia de memóriaEV_SEPARATOR, o firmware do evento de delimitador especificado mede quando não haverá mais eventos PCR0. Isso significa que o PCR0 tem um valor estático para todo o ciclo de vida de uma VM. O valor só muda para novas VMs após atualizações importantes do firmware da versão ou mudança na tecnologia de criptografia. Ele não é usado na validação da sequência de inicialização mais recente, em relação aos valores de referência da política de integridade.
1: contém o valor de PCR4, com informações sobre o shim do sistema operacional.2: contém o valor de PCR7, com informações sobre a política de Inicialização segura da instância.
policyEvaluationPassed: identifica se determinada seção da sequência de inicialização foi aprovada na verificação, em relação aos valores de referência da política de integridade.policyMeasurements: contém os valores de referência de PCR que a validação de integridade usa como valores esperados. A seçãopolicyMeasurementspode variar com base no SO, na distribuição e na configuração, mas geralmente inclui os elementos a seguir:0: contém o valor de PCR0, com informações sobre componentes de firmware e a tecnologia de criptografia de memória ativa. Esse PCR diverge do perfil de firmware da plataforma PCClient do TCG porque mede apenas os seguintes eventos:EV_S_CRTM_VERSION, a versão do firmware do Compute EngineEV_NONHOST_INFO, representando a tecnologia de criptografia de memóriaEV_SEPARATOR, o firmware do evento de delimitador especificado mede quando não haverá mais eventos PCR0. Isso significa que o PCR0 tem um valor estático para todo o ciclo de vida de uma VM. O valor só muda para novas VMs após atualizações importantes do firmware da versão ou mudança na tecnologia de criptografia. Ele não é usado na validação da sequência de inicialização mais recente, em relação aos valores de referência da política de integridade.
1: contém o valor de PCR4, com informações sobre o shim do sistema operacional. Esse valor não está incluído na primeira inicialização.2: contém o valor de PCR7, com informações sobre a política de Inicialização segura da instância.
Para saber como usar valores de PCR earlyBootReportEvent para diagnosticar uma falha na validação da integridade de inicialização, consulte Como determinar a causa da falha de validação da integridade de inicialização.
lateBootReportEvent
lateBootReportEvent contém as seguintes seções e elementos:
actualMeasurements: contém os valores do registro de configuração da plataforma (PCR, na sigla em inglês) para a sequência de inicialização mais recente (link em inglês). Os valores de PCR identificam os componentes de inicialização e a ordem de carregamento dos componentes usados pela sequência de inicialização mais recente. Eles são comparados com o valor de referência da política de integridade, capturados na seçãopolicyMeasurements, para determinar se houve mudança na sequência de inicialização da instância da VM. Os elementos da seçãoactualMeasurementspodem variar de acordo com o SO, a distribuição e a configuração. A seção normalmente inclui os elementos a seguir:0: contém o valor de PCR0, com informações sobre componentes de firmware e a tecnologia de criptografia de memória ativa. Esse PCR diverge do perfil de firmware da plataforma PCClient do TCG porque mede apenas os seguintes eventos:EV_S_CRTM_VERSION, a versão do firmware do Compute EngineEV_NONHOST_INFO, representando a tecnologia de criptografia de memóriaEV_SEPARATOR, o firmware do evento de delimitador especificado mede quando não haverá mais eventos PCR0. Isso significa que o PCR0 tem um valor estático para todo o ciclo de vida de uma VM. O valor só muda para novas VMs após atualizações importantes do firmware da versão ou mudança na tecnologia de criptografia. Ele não é usado na validação da sequência de inicialização mais recente, em relação aos valores de referência da política de integridade.
1: contém o valor de PCR4, com informações sobre o carregador de inicialização do segundo estágio e o kernel.2: contém o valor de PCR5, com informações sobre a tabela de partição GUID do disco. Ele não é usado na validação da sequência de inicialização mais recente, em relação aos valores de referência da política de integridade.3: contém o valor de PCR7, com informações sobre a política de Inicialização segura da instância.
policyEvaluationPassed: identifica se determinada seção da sequência de inicialização foi aprovada na verificação, em relação aos valores de referência da política de integridade.policyMeasurements: contém os valores de referência de PCR que a validação de integridade usa como valores esperados. A seçãopolicyMeasurementspode variar com base no SO, na distribuição e na configuração, mas geralmente inclui os elementos a seguir:0: contém o valor de PCR0, com informações sobre componentes de firmware e a tecnologia de criptografia de memória ativa. Esse PCR diverge do perfil de firmware da plataforma PCClient do TCG porque mede apenas os seguintes eventos:EV_S_CRTM_VERSION, a versão do firmware do Compute EngineEV_NONHOST_INFO, representando a tecnologia de criptografia de memóriaEV_SEPARATOR, o firmware do evento de delimitador especificado mede quando não haverá mais eventos PCR0. Isso significa que o PCR0 tem um valor estático para todo o ciclo de vida de uma VM. O valor só muda para novas VMs após atualizações importantes do firmware da versão ou mudança na tecnologia de criptografia. Ele não é usado na validação da sequência de inicialização mais recente, em relação aos valores de referência da política de integridade.
1: contém o valor de PCR4, com informações sobre o carregador de inicialização do segundo estágio e o kernel.2: contém o valor de PCR7, com informações sobre a política de Inicialização segura da instância.
Para saber como usar valores de PCR lateBootReportEvent para diagnosticar uma falha na validação da integridade de inicialização, consulte Como determinar a causa da falha de validação da integridade de inicialização.
Como usar o BitLocker com imagens de VMs protegidas
É possível ativar os discos de inicialização do BitLocker para Windows que fazem parte das imagens de VMs protegidas. As imagens de VM protegidas oferecem recursos de segurança, como firmware compatível com UEFI, inicialização segura, inicialização medida protegida por vTPM e monitoramento de integridade. O vTPM e o monitoramento de integridade estão ativados por padrão, e o Google recomenda ativar a inicialização segura, se possível.
Se você ativar o BitLocker em um disco de inicialização do Windows que faça parte de uma imagem de VM protegida, é altamente recomendável salvar a chave de recuperação em um local seguro. Se você não tiver a chave de recuperação, não será possível recuperar os dados.
Analise os itens abaixo antes de ativar o BitLocker em um disco de inicialização do Windows que faça parte de uma imagem de VM protegida:
Nos discos de inicialização de VM protegida, o BitLocker usa o vTPM para armazenar as chaves de criptografia, e o vTPM fica permanentemente associado à VM em que foi criado. Desse modo, é possível restaurar um snapshot de um disco de inicialização de VM protegida para outro disco permanente, mas não descriptografá-lo, já que o vTPM que contém as chaves do BitLocker não está disponível. Se você tiver uma chave de recuperação, será possível recuperar os dados seguindo as instruções no Guia de recuperação do BitLocker. Se você não tiver uma chave de recuperação, os dados no disco serão irrecuperáveis.
Nos discos de dados da VM protegida, os dados do disco permanente são criptografados por padrão. Ativar o BitLocker na criptografia de disco permanente não afeta a capacidade, mas pode aumentar um pouco a utilização da vCPU. Ativar o BitLocker em discos de dados vinculados à VM não traz os mesmos desafios de recuperação dos discos de inicialização. Isso acontece porque as chaves de criptografia do BitLocker para discos de dados não são armazenadas no vTPM. Se você perdeu a capacidade de desbloquear o disco normalmente e tem a chave de recuperação, poderá anexar o disco a outra VM não criptografada e recuperá-lo por lá. Se você não tiver a chave de recuperação, os dados no disco não poderão ser recuperados.
Autorização do gerenciamento de identidade e acesso
A VM protegida usa o IAM para autorização.
As operações da VM protegida usam as seguintes permissões do Compute Engine:
compute.instances.updateShieldedInstanceConfig: permite que o usuário mude as opções da VM protegida em uma instância de VM.compute.instances.setShieldedInstanceIntegrityPolicy: permite que o usuário atualize o valor de referência da política de integridade em uma instância de VM.compute.instances.getShieldedInstanceIdentity: permite que o usuário recupere informações de chaves de endosso do vTPM.
As permissões da VM protegida são concedidas aos seguintes papéis do Compute Engine:
roles/compute.instanceAdmin.v1roles/compute.securityAdmin
Também é possível conceder permissões da VM protegida a papéis personalizados.
Restrições da política da organização para VMs protegidas
É possível definir a restrição constraints/compute.requireShieldedVmda política da organização como True para exigir que as instâncias de VM do Compute Engine criadas na sua organização sejam instâncias de VM protegida.
Saiba como definir a restrição constraints/compute.requireShieldedVm em Como usar restrições booleanas na política da organização.
Você precisa ser um administrador de políticas da organização para definir uma restrição.
Limitações
A VM protegida não é compatível com instâncias bare metal.
A seguir
- Aprenda sobre como recuperar a chave de endosso do vTPM.
- Conheça uma abordagem para automatizar respostas a eventos de monitoramento de integridade.