Associer automatiquement une VM Windows à un domaine

Cette page explique comment joindre une instance de VM Windows Compute Engine à un domaine à l'aide de la fonctionnalité de jonction de domaine automatisée du service géré pour Microsoft Active Directory.

Comment Microsoft AD géré associe automatiquement une VM Windows à un domaine

Pour utiliser Microsoft AD géré pour authentifier les applications exécutées sur vos VM, vous devez joindre les VM à votre domaine Microsoft AD géré. Le processus d'association au domaine implique généralement d'effectuer certaines étapes manuelles.

Lorsque vous créez ou mettez à jour une VM Windows Compute Engine, vous pouvez l'associer à votre domaine Microsoft AD géré en automatisant l'approche manuelle à l'aide de scripts. Toutefois, pour exécuter ces scripts sur une VM Compute Engine, vous avez besoin d'identifiants AD qui doivent être stockés et gérés de manière sécurisée, ainsi que d'un environnement pour provisionner et exécuter ces scripts. Pour vous dispenser d'utiliser des identifiants et un service supplémentaire, vous pouvez automatiser le processus de jonction de domaine à l'aide de scripts prêts à l'emploi disponibles dans Microsoft AD géré.

Lorsque vous créez des VM Compute Engine, vous pouvez utiliser des scripts pour les joindre automatiquement à votre domaine Microsoft AD géré. Une fois que Compute Engine a créé les VM, Microsoft AD géré lance la requête d'association au domaine et tente d'associer les VM à votre domaine. Si la requête d'association au domaine aboutit, Managed Microsoft AD associe les VM créées à votre domaine. Si la requête d'association au domaine échoue, les VM créées continuent de s'exécuter. Pour des raisons de sécurité ou de facturation, vous pouvez personnaliser ce comportement. Managed Microsoft AD peut arrêter les VM lorsque la requête de jonction au domaine échoue.

Lorsque vous mettez à jour des VM Compute Engine, vous pouvez utiliser des scripts pour joindre automatiquement les VM existantes à votre domaine Microsoft AD géré. Pour que la requête d'association au domaine aboutisse, Microsoft AD géré redémarre les VM après l'exécution des scripts.

Avant de commencer

  1. Créez un domaine Microsoft AD géré.

  2. Assurez-vous que le nom de la VM ne comporte pas plus de 15 caractères.

  3. Assurez-vous que la VM s'exécute sur une version de Windows compatible avec Microsoft AD géré.

  4. Configurez l'appairage de domaines entre le domaine Microsoft AD géré et le réseau de la VM, ou placez le domaine Microsoft AD géré et la VM sur le même réseau.

  5. Créez un compte de service avec le rôle IAM Google Cloud Managed Identities Domain Join (roles/managedidentities.domainJoin) dans le projet contenant le domaine Microsoft AD géré. Pour en savoir plus, consultez la section Rôles des identités gérées dans le cloud.

  6. Définissez le niveau d'accès cloud-platform complet sur la VM. Pour en savoir plus, consultez la section Autorisation.

Métadonnées

Vous avez besoin des clés de métadonnées suivantes pour associer une VM Windows à un domaine.

Clés de métadonnées Description
windows-startup-script-url Utilisez cette clé de métadonnées pour spécifier l'emplacement publiquement accessible du script de démarrage Windows que la VM exécute pendant le processus de démarrage. Pour utiliser le script de démarrage Windows pré-fourni par Microsoft AD géré, vous pouvez saisir l'URL suivante: https://raw.githubusercontent.com/GoogleCloudPlatform/managed-microsoft-activedirectory/main/domain_join.ps1.

Si la VM n'a pas accès à cette URL, vous pouvez transmettre le script de démarrage à l'aide de l'une des autres méthodes compatibles. Pour en savoir plus, consultez Utiliser des scripts de démarrage sur des VM Windows.
managed-ad-domain Utilisez cette clé de métadonnées pour spécifier le nom complet de la ressource de votre domaine Microsoft AD géré à rejoindre, au format projects/PROJECT_ID/locations/global/domains/DOMAIN_NAME. Par exemple, projects/my-project-123/locations/global/domains/my-domain.example.com.
managed-ad-domain-join-failure-stop Facultatif: Par défaut, la VM continue de s'exécuter même après l'échec de la requête d'association au domaine. Vous pouvez définir cette clé de métadonnées sur TRUE si vous souhaitez arrêter la VM en cas d'échec de la requête. Microsoft AD géré peut arrêter la VM après avoir défini cette clé de métadonnées, mais il ne la supprime pas.
enable-guest-attributes Facultatif: par défaut, les attributs d'invité sont désactivés sur une VM. Vous pouvez définir cette clé de métadonnées sur TRUE si vous souhaitez utiliser les attributs d'invité de la VM pour consigner l'état de la jonction au domaine après l'exécution du script de démarrage.

Managed Microsoft AD écrit l'état de l'association au domaine dans les clés suivantes sous l'espace de noms managed-ad de guest-attributes:
  • domain-join-status: cette clé indique l'état de la requête d'association au domaine après l'exécution du script.
  • domain-join-failure-message: si la requête d'association au domaine échoue, cette clé fournit le message d'erreur.
  • Lorsque vous obtenez les attributs d'invité, vous pouvez utiliser cet espace de noms et ces clés pour afficher l'état de l'association au domaine.
    managed-ad-ou-name Facultatif: Par défaut, Microsoft AD géré associe la VM à l'unité organisationnelle (UO) GCE Instances précréée sous l'UO Cloud pour mieux gérer les règles. Pour en savoir plus sur l'UO Cloud, consultez Unités organisationnelles.

    Si vous souhaitez associer la VM à une UO personnalisée, vous devez créer l'UO personnalisée sous l'UO GCE Instances ou l'UO Cloud dans Microsoft AD géré, puis utiliser cette clé de métadonnées pour spécifier l'UO personnalisée. Le service Microsoft AD géré n'est pas compatible avec les UO personnalisées que vous créez ailleurs que sous l'UO Cloud ou GCE Instances.

    Si vous créez une UO personnalisée sous l'UO Cloud, spécifiez le chemin d'accès de l'UO personnalisée au format suivant: /cloud/SUB_OU1/SUB_OU2/…/CUSTOM_OU. Exemple : /cloud/my-sub-ou/my-custom-ou.

    Pour en savoir plus sur la gestion des objets AD dans Microsoft AD géré, consultez Gérer des objets Active Directory.
    managed-ad-force Facultatif: Lorsque vous supprimez une VM que vous avez jointe à un domaine, le compte d'ordinateur de la VM continue d'exister dans Microsoft AD géré. Lorsque vous essayez de rejoindre une autre VM avec le même compte d'ordinateur, la requête de jonction au domaine échoue par défaut. Managed Microsoft AD peut réutiliser un compte d'ordinateur existant si vous définissez cette clé de métadonnées sur TRUE.

    Rejoindre la VM Windows

    Vous pouvez utiliser ces clés de métadonnées lorsque vous créez une VM Windows ou mettez à jour une VM existante. Les sections suivantes expliquent comment utiliser ces clés de métadonnées dans les commandes gcloud CLI lorsque vous créez ou mettez à jour une VM.

    Toutefois, vous pouvez également utiliser ces clés de métadonnées avec une VM à l'aide des autres options disponibles. Pour en savoir plus sur l'utilisation des métadonnées avec une VM Windows Compute Engine, consultez la section Définir des métadonnées personnalisées.

    Rejoindre une VM Windows lors de sa création

    Pour créer et rejoindre une VM Windows Compute Engine, exécutez la commande gcloud CLI suivante:

    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
    

    Remplacez les éléments suivants :

    • INSTANCE_NAME: nom de la VM Windows Compute Engine à créer. Exemple :my-instance-1
    • URL: emplacement publiquement accessible du script de démarrage Windows que la VM exécute pendant le processus de démarrage.
    • DOMAIN_RESOURCE_PATH: nom complet de la ressource de votre domaine Microsoft AD géré à rejoindre. Exemple :projects/my-project-123/locations/global/domains/my-domain.example.com
    • SERVICE_ACCOUNT: compte de service que vous souhaitez associer à la VM. Exemple :my-sa-123@my-project-123.iam.gserviceaccount.com
    • --scopes: les niveaux d'accès par défaut configurés dans la VM limitent la requête d'association au domaine. Vous devez définir le niveau d'accès cloud-platform complet sur la VM. Pour en savoir plus, consultez la section Autorisation.
    • --image-project: vous devez définir cet indicateur sur windows-cloud pour créer une VM Windows. Pour en savoir plus, consultez la section consacrée à gcloud compute instances create.
    • IMAGE_FAMILY: spécifiez l'une des familles d'images publiques contenant des images pour les versions Windows compatibles. Par exemple, windows-2019-core.

    Pour en savoir plus sur l'ajout de métadonnées lors de la création d'une VM, consultez la section Définir des métadonnées lors de la création d'une VM.

    Rejoindre une VM Windows existante

    Vous pouvez mettre à jour les clés de métadonnées d'une VM Windows Compute Engine existante et joindre la VM à votre domaine. Après avoir ajouté ces clés de métadonnées à la VM, redémarrez-la pour que la requête d'association au domaine aboutisse.

    Pour rejoindre une VM Windows Compute Engine existante, exécutez la commande gcloud CLI suivante:

    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
    

    Remplacez les éléments suivants :

    • INSTANCE_NAME: nom de la VM Windows Compute Engine à laquelle vous souhaitez vous joindre. Exemple :my-instance-1
    • URL: emplacement publiquement accessible du script de démarrage Windows que la VM exécute après le redémarrage.
    • DOMAIN_RESOURCE_PATH: nom complet de la ressource de votre domaine Microsoft AD géré à rejoindre. Exemple :projects/my-project-123/locations/global/domains/my-domain.example.com
    • SERVICE_ACCOUNT: compte de service auquel vous avez associé la VM lors de sa création. Exemple :my-sa-123@my-project-123.iam.gserviceaccount.com
    • --scopes: les niveaux d'accès par défaut configurés dans la VM limitent la requête d'association au domaine. Vous devez définir le niveau d'accès cloud-platform complet sur la VM. Pour en savoir plus, consultez la section Autorisation.

    Pour en savoir plus sur l'ajout de métadonnées à une VM existante, consultez la section Mettre à jour les métadonnées sur une VM en cours d'exécution.

    Nettoyer les VM non associées

    Nous vous recommandons de supprimer manuellement le compte d'ordinateur de Microsoft AD géré dans les scénarios suivants:

    • Si vous supprimez une VM que vous avez jointe au domaine Microsoft AD géré.
    • Si une VM n'a pas réussi à s'associer au domaine Microsoft AD géré.

    Afficher les journaux de débogage

    Si la demande d'adhésion au domaine échoue, vous pouvez consulter les journaux du script de démarrage pour identifier et résoudre le problème. Pour consulter les journaux du script de démarrage, vous pouvez afficher la sortie du port série 1. Si vous avez activé les attributs d'invité sur la VM, vous pouvez obtenir les attributs d'invité pour afficher les journaux.

    Pour en savoir plus sur les erreurs courantes que vous pouvez rencontrer lorsque vous associez une VM à un domaine, consultez Impossible d'associer automatiquement une VM Windows à un domaine.

    Étape suivante