Comment réparer "Le client WinRM ne peut pas traiter la demande. L'authentification Kerberos ne peut pas être utilisée avec des informations d'identification implicites si l'ordinateur client n'est pas connecté à un domaine".
Description de l'erreur
Cette erreur se produit lorsque vous essayez d'utiliser Windows Remote Management (WinRM) pour vous connecter à un ordinateur distant en utilisant l'authentification Kerberos, mais votre ordinateur local fonctionne dans un groupe de travail plutôt que d'être connecté à un domaine Active Directory. Kerberos nécessite strictement une infrastructure de domaine centralisée pour valider les identifiants. Lorsque vous ne fournissez pas explicitement les identifiants d'utilisateur (identifiants implicites), WinRM par défaut Kerberos et s'attend à ce que votre identité de machine locale fasse partie de ce domaine, ce qui échoue dans un environnement de groupe de travail.
Réparations étape par étape
Pour résoudre ce problème, vous devez configurer WinRM pour faire confiance à l'hôte distant en utilisant l'authentification NTLM ou fournir explicitement des informations d'identification pendant la connexion.
Méthode 1: Ajouter l'hôte distant à la liste des hôtes de confiance
Since Kerberos cannot be used, you must tell your local computer to trust the remote machine using NTLM authentication.
- À votre place. local computer, cliquez sur le menu Démarrer, tapez PowerShell, cliquez avec le bouton droit et sélectionnez Run as administrator.
- Exécutez la commande suivante pour vérifier la configuration actuelle de TrustedHosts:
Get-Item WSMan:\localhost\Client\TrustedHosts - Run the following command to allow your computer to connect to the specific remote IP address or hostname (replace
REMOTE_COMPUTER_IP_OR_NAMEavec les détails de votre télécommande réelle):Set-Item WSMan:\localhost\Client\TrustedHosts -Value "REMOTE_COMPUTER_IP_OR_NAME" -ForceRemarque: si vous souhaitez vous connecter à n'importe quel ordinateur (moins sécurisé, recommandé uniquement pour les réseaux privés), vous pouvez utiliser un symbole générique `" "` au lieu de.*
- Redémarrez le service WinRM pour appliquer les modifications en exécutant:
Restart-Service WinRM
Méthode 2: Passer des identifiants explicites et définir le type d'authentification
Lorsque vous exécutez vos commandes WinRM ou PowerShell Remoting, vous devez fournir explicitement un nom d'utilisateur et un mot de passe au lieu de vous fier à des informations d'identification implicites, et spécifier le mécanisme d'authentification.
If you are using PowerShell Remoting (Enter-PSSession or Invoke-Command):
- Ouvrez le PowerShell.
- Utilisez le
-CredentialParamètre à côté de la-AuthenticationParamètre réglé surNegotiateou...Basic. - Exécutez la commande de connexion comme ceci:
Enter-PSSession -ComputerName REMOTE_COMPUTER_IP_OR_NAME -Credential (Get-Credential) -Authentication Negotiate - A pop-up window will appear. Enter the username and password of an administrator account that exists on the remote Un ordinateur.
Méthode 3: Vérifier les paramètres d'authentification WinRM sur les deux ordinateurs
Assurez-vous que le client et le serveur WinRM sont configurés pour permettre l'authentification NTLM (Negotiate).
- Ouvrez. PowerShell as an administrator sur les ordinateurs locaux et distants.
- Exécutez la commande suivante pour afficher les types d'authentification activés:
Get-ChildItem WSMan:\localhost\Service\Auth Get-ChildItem WSMan:\localhost\Client\Auth - Assurez-vous de le faire.
NegotiateJe ne sais pas.Basic(le cas échéant) sont réglées surTrueSi.Negotiateest réglée surFalse, l' activer en exécutant:Set-Item WSMan:\localhost\Client\Auth\Negotiate -Value $true Set-Item WSMan:\localhost\Service\Auth\Negotiate -Value $true
Il y a peut-être des erreurs.. Learn Microsoft