## Symptôme Sur une machine membre du domaine, vous obtenez le message l'un des messages suivants : - "La relation d’approbation entre cette station de travail et le domaine principal a échoué". - "The trust relationship between this workstation and the primary domain failed" en anglais. ## Cause Cette erreur se produit lorsque le canal sécurisé entre la machine concernée et Active Directory est rompu.  Chaque ordinateur joint au domaine dispose d’un compte dans Active Directory, et chaque compte d’ordinateur est associé à un mot de passe. Dans certains cas, le mot de passe local du PC membre du domaine se désynchronise du mot de passe stockée dans Active Directory (machine éteinte plus de 30 jours par exemple). Lorsque cela se produit, le canal sécurisé ne peut pas être établi et l’erreur ci-dessus s’affiche quand un utilisateur tente de se connecter au domaine. > [!info] À savoir !<span style="font-weight: normal; color: var(--text-normal)"> Ces mots de passe de compte d’ordinateur sont distincts des mots de passe du compte d’utilisateur et sont gérés, synchronisés et mis à jour automatiquement sans intervention de l’utilisateur. Ce mot de passe est renouvellé tous les 30 jours par défaut. </span> ## Résolution ### La méthode manuelle La méthode manuelle est connue de beaucoup d'administrateur système. Elle fonctionne, mais elle n'est pas pratique, car elle nécessite de déconnecter la machine du réseau. Elle consiste à réaliser les actions suivantes sachant que **l'objectif est de retirer la machine du domaine et de la réintégrer** : > [!danger] Attention !<span style="font-weight: normal; color: var(--text-normal)"> Cette méthode implique que le PC peut être retiré du domaine sans impact sur la production.</span> 1. Déconnecter l'ordinateur du réseau 2. Se connecter en administrateur local 3. Retirer l'ordinateur du domaine ``` Remove-Computer -UnjoinDomaincredential IT-Connect\Admin -PassThru -Verbose -Restart ``` 4. Réinitialiser l'objet ordinateur dans l'Active Directory 5. Redémarrer l'ordinateur 6. Reconnecter le câble réseau 7. Ajouter l'ordinateur au domaine ``` Add-Computer -DomainName it-connect.local -Restart ``` Le principal inconvénient de cette méthode, c'est qu'elle implique une présence physique puisqu'il faut déconnecter la machine du réseau. Pour sortir la machine du domaine et l'ajouter de nouveau, on peut utiliser l'interface graphique de Windows ou les commandes PowerShell "*Remove-Computer*" et "*Add-Computer*". ### PowerShell : Test-ComputerSecureChannel Depuis plusieurs années, il est possible de corriger cette erreur avec PowerShell ! Une très bonne nouvelle, car ça veut dire qu'on peut le faire à distance, donc c'est beaucoup plus pratique. **La commande Test-ComputerSecureChannel existe depuis Windows 10, elle est toujours disponible sur Windows 11.** Personnellement, **je vous recommande cette méthode**. Sur une machine où **la relation d'approbation est cassée**, il faut se connecter et exécuter simplement cette commande dans une console PowerShell : ``` Test-ComputerSecureChannel ``` Il est également possible de cibler un contrôleur de domaine spécifique, comme on le fait avec les commandes du module Active Directory. Par exemple : ``` Test-ComputerSecureChannel -Server "SRV-ADDS.it-connect.local" ``` Cette commande retourne simplement *true* (vrai) ou *false* (faux) pour indiquer **l'état de la relation d'approbation entre l'ordinateur et l'annuaire** (avec le paramètre *-Verbose*). Dans le cas où vous avez l'erreur de relation d'approbation, la commande retournera "false". De ce fait, il faudra ajouter le **paramètre -Repair** qui permet de réparer la relation d'approbation ainsi que les identifiants. ``` Test-ComputerSecureChannel -Repair -Credential [email protected] ``` On peut aussi faire : ``` Test-ComputerSecureChannel -Repair -Credential (Get-Credential) ``` En ce qui concerne le compte utilisateur, il peut s'agir d'un compte Administrateur ou tout simplement d'un compte qui a le droit d'ajouter des machines au domaine Active Directory. Puisque c'est du PowerShell, on peut aussi agir à distance sur une ou plusieurs machines avec Invoke-Command. Voici un exemple : ``` Invoke-Command -ComputerName PC-01 -ScriptBlock { Test-ComputerSecureChannel } ``` > **Note** : que ce soit avec cette méthode ou la méthode qui va suivre, si l'objet ordinateur n'existe pas dans l'Active Directory, il vaut mieux le créer avant. Avec la console "**Utilisateurs et ordinateurs Active Directory**" (ou une autre méthode), effectuez un clic droit "**Nouveau**" puis "**Ordinateur**". Attribuez le même nom. ### PowerShell : Reset-ComputerMachinePassword Lorsque l'erreur se produit, il y a une seconde commande PowerShell qui peut rendre service pour se sortir d'affaire : **Reset-ComputerMachinePassword,** disponible avec Windows PowerShell 5.1. **Cette commande permet de réinitialiser le mot de passe du compte ordinateur de la machine locale.** Là encore, cette commande s'exécute depuis l'ordinateur où se situe l'erreur. Voici comment s'utilise cette commande : ``` Reset-ComputerMachinePassword -Credential [email protected] ``` On peut également préciser le nom du contrôleur de domaine cible : ``` Reset-ComputerMachinePassword -Credential [email protected] -Server "SRV-ADDS.it-connect.local" ``` L'opération sera automatique, ce n'est pas à vous de définir le mot de passe. Cette méthode permet aussi de corriger l'erreur d'approbation. ### Commande netdom Netdom est un outil qui existe depuis très longtemps sur Windows, avant même que PowerShell pointe le bout de son nez. Il permet aussi de réinitialiser le mot de passe du compte ordinateur à partir de la ligne de commande. Voici un exemple où je contacte le contrôleur de domaine "SRV-ADDS", en utilisant le compte "florian" et sans préciser le mot de passe en clair (d'où le "*"). ``` netdom resetpwd /s:SRV-ADDS /ud:florian /pd:* ``` ## Références - [Microsoft Learn - Reset-ComputerMachinePassword](https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.management/reset-computermachinepassword?view=powershell-5.1?WT.mc_id=AZ-MVP-5004580) - [Microsoft Learn - Test-ComputerSecureChannel](https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.management/test-computersecurechannel?view=powershell-5.1?WT.mc_id=AZ-MVP-5004580) - [IT-CONNECT - Corriger les erreurs de relation d'approbation](https://www.it-connect.fr/windows-comment-corriger-erreur-de-relation-approbation-voici-plusieurs-methodes/)