Aplicar a extensão de VM Key Vault nos serviços de nuvem do Azure (suporte estendido)

Este artigo fornece informações básicas sobre a extensão de VM do Azure Key Vault para Windows e mostra como habilitá-la nos Serviços de Nuvem do Azure.

O que é a extensão de VM do Key Vault?

A extensão de VM de Key Vault fornece a atualização automática dos certificados armazenados no cofre de chaves do Azure. Especificamente, a extensão monitora uma lista de certificados observados armazenados em cofres de chaves. Quando uma extensão detecta uma alteração, ela recupera e instala os certificados correspondentes. Para obter mais informações, confira Extensão de VM Key Vault para Windows.

O que há de novo na extensão de VM Key Vault?

Agora há suporte para a extensão de VM Key Vault na plataforma serviços de nuvem do Azure (suporte estendido) para habilitar o gerenciamento de certificados de ponta a ponta. A extensão agora pode efetuar pull de certificados de um cofre de chaves configurado em um intervalo de sondagem predefinido e instalá-los para o serviço usar.

Como posso usar a extensão de VM do Key Vault?

O procedimento a seguir mostrará como instalar a extensão de VM do Cofre de Chaves nos Serviços de Nuvem do Azure criando primeiro um certificado de bootstrap em seu cofre para obter um token da ID do Microsoft Entra. Esse token ajudará na autenticação da extensão com o cofre. Depois que o processo de autenticação for configurado e a extensão for instalada, todos os certificados mais recentes serão retirados automaticamente em intervalos de sondagem regulares.

Observação

A extensão da VM do Key Vault baixa todos os certificados no repositório de certificados do Windows para a localização fornecida pela propriedade certificateStoreLocation nas configurações da extensão da VM. No momento, a extensão da VM do Key Vault concede acesso à chave privada do certificado somente para a conta do administrador do sistema local.

Pré-requisitos

Para usar a extensão de VM do Cofre de Chaves do Azure, você precisa ter um locatário do Microsoft Entra. Para obter mais informações, confira Início Rápido: Configurar um locatário.

Habilitar extensão de VM do Azure Key Vault

  1. Gere um certificado no seu cofre e baixe o arquivo .cer para esse certificado.

  2. No portal do Azure, acesse Registros de aplicativo.

    Screenshot of resources available in the Azure portal, including app registrations.

  3. Na página Registros de aplicativo, selecione Novo registro.

    Screenshot that shows the page for app registrations in the Azure portal.

  4. Na próxima página, preencha o formulário e conclua a criação do aplicativo.

  5. Carregue o arquivo de .cer do certificado no portal do aplicativo Microsoft Entra.

    Você também pode usar o recurso de notificação da Grade de Eventos do Azure para o Key Vault para carregar o certificado.

  6. Conceda ao aplicativo Microsoft Entra permissões secretas no Cofre de Chaves:

    • Se você estiver usando uma visualização de controle de acesso baseado em função (RBAC), procure o nome do aplicativo Microsoft Entra que você criou e atribua-o à função Usuário de Segredos do Cofre de Chaves (visualização).
    • Se você estiver usando políticas de acesso ao cofre, atribua permissões Secret-Get ao aplicativo Microsoft Entra que você criou. Para obter mais informações, confira Atribuir políticas de acesso.
  7. Instale a extensão de VM do Key Vault usando o snippet de modelo do Azure Resource Manager para o recurso cloudService:

    {
        "osProfile":
        {
            "secrets":
            [
                {
                    "sourceVault":
                    {
                        "id": "[parameters('sourceVaultValue')]"
                    },
                    "vaultCertificates":
                    [
                        {
                            "certificateUrl": "[parameters('bootstrpCertificateUrlValue')]"
                        }
                    ]
                }
            ]
        },
        "extensionProfile":
        {
            "extensions":
            [
                {
                    "name": "KVVMExtensionForPaaS",
                    "properties":
                    {
                        "type": "KeyVaultForPaaS",
                        "autoUpgradeMinorVersion": true,
                        "typeHandlerVersion": "1.0",
                        "publisher": "Microsoft.Azure.KeyVault",
                        "settings":
                        {
                            "secretsManagementSettings":
                            {
                                "pollingIntervalInS": "3600",
                                "certificateStoreName": "My",
                                "certificateStoreLocation": "LocalMachine",
                                "linkOnRenewal": false,
                                "requireInitialSync": false,
                                "observedCertificates": "[parameters('keyVaultObservedCertificates']"
                            },
                            "authenticationSettings":
                            {
                                "clientId": "Your AAD app ID",
                                "clientCertificateSubjectName": "Your boot strap certificate subject name [Do not include the 'CN=' in the subject name]"
                            }
                        }
                    }
                }
            ]
        }
    }
    

    Talvez seja necessário especificar o repositório de certificados para o certificado de inicialização em ServiceDefinition.csdef:

        <Certificates>
                 <Certificate name="bootstrapcert" storeLocation="LocalMachine" storeName="My" />
        </Certificates> 
    

Próximas etapas

Aprimore ainda mais sua implantação habilitando o monitoramento nos Serviços de Nuvem do Azure (suporte estendido).