Vincular uma VM do Windows automaticamente a um domínio

Esta página explica como ingressar em uma instância de VM do Windows Compute Engine em um domínio usando o recurso de união de domínios automatizada no serviço gerenciado para o Microsoft Active Directory.

Como o Managed Microsoft AD associa uma VM do Windows a um domínio automaticamente

Para usar o Managed Microsoft AD para autenticar os aplicativos executados nas VMs, você precisa associar as VMs ao seu domínio do Managed Microsoft AD. O processo de associação de domínio geralmente envolve algumas etapas manuais.

Ao criar ou atualizar uma VM do Windows Compute Engine, você pode associar a VM ao seu domínio gerenciado do Microsoft AD automatizando a abordagem manual usando scripts. No entanto, para executar esses scripts em uma VM do Compute Engine, você precisa de credenciais do AD que precisam ser armazenadas e mantidas com segurança e um ambiente para provisionar e executar esses scripts. Para eliminar a necessidade de credenciais e um serviço adicional, você pode automatizar o processo de união de domínios com scripts prontos disponíveis no Microsoft AD gerenciado.

Ao criar VMs do Compute Engine, você pode usar scripts para associar automaticamente as VMs ao seu domínio gerenciado do Microsoft AD. Depois que o Compute Engine cria as VMs, o Microsoft AD gerenciado inicia a solicitação de mesclagem de domínio e tenta mesclar as VMs com seu domínio. Se a solicitação de associação ao domínio for bem-sucedida, o Microsoft AD gerenciado vai associar as VMs criadas ao seu domínio. Se a solicitação de associação ao domínio falhar, as VMs criadas vão continuar em execução. Para fins de segurança ou faturamento, é possível personalizar esse comportamento, e o Microsoft AD gerenciado pode interromper as VMs quando a solicitação de associação ao domínio falhar.

Ao atualizar as VMs do Compute Engine, é possível usar scripts para associar automaticamente as VMs ao seu domínio gerenciado do Microsoft AD. Para que a solicitação de associação ao domínio seja bem-sucedida, o Microsoft AD gerenciado reinicia as VMs após a execução dos scripts.

Antes de começar

  1. Crie um domínio do Managed Microsoft AD.

  2. O nome da VM precisa ter no máximo 15 caracteres.

  3. Verifique se a VM é executada em uma versão do Windows com suporte do Managed Microsoft AD.

  4. Configure o peering de domínio entre o domínio do Microsoft AD gerenciado e a rede da VM ou deixe o domínio do Microsoft AD gerenciado e a VM na mesma rede.

  5. Crie uma conta de serviço com a função de IAM de integração de domínio do Google Cloud Managed Identities (roles/managedidentities.domainJoin) no projeto que tem o domínio do Managed Microsoft AD. Para mais informações, consulte Papéis do Cloud Managed Identities.

  6. Defina o escopo de acesso cloud-platform completo na VM. Para mais informações, consulte Autorização.

Metadados

Você precisa das seguintes chaves de metadados para associar uma VM do Windows a um domínio.

Chaves de metadados Descrição
windows-startup-script-url Use essa chave de metadados para especificar o local acessível publicamente do script de inicialização do Windows que a VM executa durante o processo de inicialização. Para usar o script de inicialização do Windows pré-entregue pelo Microsoft AD gerenciado, insira o seguinte URL: https://raw.githubusercontent.com/GoogleCloudPlatform/managed-microsoft-activedirectory/main/domain_join.ps1.

Se a VM não tiver acesso a esse URL, você poderá transmitir o script de inicialização usando qualquer um dos outros métodos compatíveis. Para mais informações, consulte Como usar scripts de inicialização em VMs do Windows.
managed-ad-domain Use essa chave de metadados para especificar o nome completo do recurso do seu domínio do Microsoft AD gerenciado a ser adicionado, no formato: projects/PROJECT_ID/locations/global/domains/DOMAIN_NAME. Por exemplo, projects/my-project-123/locations/global/domains/my-domain.example.com.
managed-ad-domain-join-failure-stop Opcional: por padrão, a VM continua em execução mesmo após a falha da solicitação de associação ao domínio. Defina essa chave de metadados como TRUE se quiser interromper a VM quando a solicitação falhar. O Microsoft AD gerenciado pode interromper a VM depois que você define essa chave de metadados, mas não a exclui.
enable-guest-attributes Opcional: por padrão, os atributos de convidado são desativados em uma VM. É possível definir essa chave de metadados como TRUE se você quiser usar os atributos de convidado da VM para registrar o status de participação no domínio após a execução do script de inicialização.

O Microsoft AD gerenciado grava o status de associação ao domínio nas seguintes chaves no namespace managed-ad de guest-attributes:
  • domain-join-status: essa chave fornece o status da solicitação de associação ao domínio após a execução do script.
  • domain-join-failure-message: se a solicitação de mesclagem de domínio falhar, essa chave vai fornecer a mensagem de erro.
  • Quando você recebe os atributos de convidado, é possível usar esse namespace e essas chaves para conferir o status de associação ao domínio.
    managed-ad-ou-name Opcional: por padrão, o Microsoft AD gerenciado mescla a VM à unidade organizacional (UO) GCE Instances que foi criada anteriormente na UO Cloud para gerenciar melhor as políticas. Para mais informações sobre a OU Cloud, consulte Unidades organizacionais.

    Se você quiser mesclar a VM a uma UO personalizada, crie a UO personalizada na UO GCE Instances ou Cloud no AD gerenciado do Microsoft e use essa chave de metadados para especificar a UO personalizada. O Microsoft AD gerenciado não oferece suporte a uma UO personalizada criada em qualquer lugar, exceto na UO Cloud ou GCE Instances.

    Se você criar uma UO personalizada na UO Cloud, especifique o caminho da UO personalizada no seguinte formato: /cloud/SUB_OU1/SUB_OU2/…/CUSTOM_OU. Por exemplo, /cloud/my-sub-ou/my-custom-ou.

    Para mais informações sobre como gerenciar objetos do AD no Managed Microsoft AD, consulte Gerenciar objetos do Active Directory.
    managed-ad-force Opcional: ao excluir uma VM que foi mesclada a um domínio, a conta de computador da VM continua existindo no Microsoft AD gerenciado. Quando você tenta ingressar em outra VM com a mesma conta de computador, a solicitação de ingresso no domínio falha por padrão. O Microsoft AD gerenciado pode reutilizar uma conta de computador existente se você definir essa chave de metadados como TRUE.

    Participar da VM do Windows

    É possível usar essas chaves de metadados ao criar uma VM do Windows ou atualizar uma VM atual. As seções a seguir ilustram como usar essas chaves de metadados nos comandos da CLI gcloud ao criar ou atualizar uma VM.

    No entanto, você também pode usar essas chaves de metadados com uma VM usando as outras opções disponíveis. Para mais informações sobre o uso de metadados com uma VM do Windows Compute Engine, consulte Definir metadados personalizados.

    Participar de uma VM do Windows durante a criação

    Para criar e ingressar em uma VM do Windows Compute Engine, execute o seguinte comando da CLI gcloud:

    gcloud compute instances create INSTANCE_NAME \
        --metadata=windows-startup-script-url=URL,managed-ad-domain=DOMAIN_RESOURCE_PATH,managed-ad-domain-join-failure-stop=TRUE,enable-guest-attributes=TRUE \
        --service-account=SERVICE_ACCOUNT \
        --scopes=https://www.googleapis.com/auth/cloud-platform \
        --image-project windows-cloud \
        --image-family IMAGE_FAMILY
    

    Substitua:

    • INSTANCE_NAME: nome da VM do Windows Compute Engine a ser criada. Por exemplo, my-instance-1.
    • URL: um local acessível publicamente do script de inicialização do Windows que a VM executa durante o processo de inicialização.
    • DOMAIN_RESOURCE_PATH: o nome completo do recurso do domínio do Microsoft AD gerenciado a ser adicionado. Por exemplo, projects/my-project-123/locations/global/domains/my-domain.example.com.
    • SERVICE_ACCOUNT: uma conta de serviço que você quer anexar à VM. Por exemplo, my-sa-123@my-project-123.iam.gserviceaccount.com.
    • --scopes: os escopos de acesso padrão configurados na VM restringem a solicitação de associação ao domínio. É necessário definir o escopo de acesso cloud-platform completo na VM. Para mais informações, consulte Autorização.
    • --image-project: é necessário definir essa flag como windows-cloud para criar uma VM do Windows. Veja mais informações em gcloud compute instances create.
    • IMAGE_FAMILY: especifique uma das famílias de imagens públicas que tenha imagens para as versões do Windows com suporte. Por exemplo, windows-2019-core.

    Para mais informações sobre como adicionar metadados durante a criação da VM, consulte Definir metadados durante a criação da VM.

    Participar de uma VM do Windows

    É possível atualizar as chaves de metadados em uma VM do Windows Compute Engine e ingressar a VM no seu domínio. Depois de adicionar essas chaves de metadados à VM, reinicie a VM para que a solicitação de associação ao domínio seja bem-sucedida.

    Para ingressar em uma VM do Windows Compute Engine, execute o seguinte comando da CLI gcloud:

    gcloud compute instances add-metadata INSTANCE_NAME \
        --metadata=windows-startup-script-url=URL,managed-ad-domain=DOMAIN_RESOURCE_PATH,managed-ad-domain-join-failure-stop=TRUE,enable-guest-attributes=TRUE \
        --service-account=SERVICE_ACCOUNT \
        --scopes=https://www.googleapis.com/auth/cloud-platform
    

    Substitua:

    • INSTANCE_NAME: nome da VM do Windows Compute Engine que você quer incluir. Por exemplo, my-instance-1.
    • URL: um local acessível publicamente do script de inicialização do Windows que a VM executa após a reinicialização.
    • DOMAIN_RESOURCE_PATH: o nome completo do recurso do domínio do Microsoft AD gerenciado a ser adicionado. Por exemplo, projects/my-project-123/locations/global/domains/my-domain.example.com.
    • SERVICE_ACCOUNT: a conta de serviço à qual você anexou a VM durante a criação. Por exemplo, my-sa-123@my-project-123.iam.gserviceaccount.com.
    • --scopes: os escopos de acesso padrão configurados na VM restringem a solicitação de participação no domínio. É necessário definir o escopo de acesso cloud-platform completo na VM. Para mais informações, consulte Autorização.

    Para mais informações sobre como adicionar metadados a uma VM, consulte Atualizar metadados em uma VM em execução.

    Limpar VMs não unidas

    Recomendamos excluir a conta de computador manualmente do Microsoft AD gerenciado nos seguintes cenários:

    • Se você excluir uma VM que foi associada ao domínio do Managed Microsoft AD.
    • Se uma VM não conseguir ingressar no domínio do Managed Microsoft AD.

    Ver registros de depuração

    Se a solicitação de associação ao domínio falhar, verifique os registros do script de inicialização para identificar e resolver o problema. Para verificar os registros do script de inicialização, confira a saída da porta serial 1. Se você tiver ativado os atributos de convidado na VM, confira os atributos de convidado para acessar os registros.

    Para saber mais sobre os erros comuns que podem ocorrer ao associar uma VM a um domínio, consulte Não foi possível associar uma VM do Windows automaticamente a um domínio.

    A seguir