È possibile configurare l'host di WinRM per abilitare la comunicazione con il plug-in PowerShell tramite il protocollo HTTP.

È necessario modificare la configurazione di WinRM eseguendo comandi nella macchina host di WinRM. È possibile utilizzare la stessa macchina come servizio WinRM e come client WinRM.

Importante: Se si ignora uno qualsiasi dei passaggi durante la configurazione di WinRM per l'utilizzo del protocollo HTTP, è possibile che l'host non venga aggiunto e che nei registri venga visualizzato un messaggio di errore come quello seguente
Caused by: org.dom4j.DocumentException: Error on line -1 of document : Premature end of file. 
Nested exception: Premature end of file.
at org.dom4j.io.SAXReader.read(SAXReader.java:482)
at org.dom4j.DocumentHelper.parseText(DocumentHelper.java:278)
at com.xebialabs.overthere.cifs.winrm.connector.JdkHttpConnector.sendMessage(JdkHttpConnector.java:117)

Procedura

  1. Eseguire il comando seguente per impostare i valori di configurazione di WinRM predefiniti.
    c:\> winrm quickconfig
  2. (Facoltativo) Eseguire il comando seguente per verificare che il listener sia in esecuzione e verificare le porte predefinite.
    c:\> winrm e winrm/config/listener

    Le porte predefinite sono 5985 per HTTP e 5986 per HTTPS.

  3. Abilitare l'autenticazione di base nel servizio WinRM.
    1. Eseguire il comando seguente per verificare se l'autenticazione di base è consentita.
      c:\> winrm get winrm/config/service
    2. Eseguire il comando seguente per abilitare l'autenticazione di base.
      c:\> winrm set winrm/config/service/auth @{Basic="true"}
  4. Eseguire il comando seguente per consentire il trasferimento dei dati non crittografati al servizio WinRM.
    c:\> winrm set winrm/config/service @{AllowUnencrypted="true"}
  5. Se il livello di protezione avanzata del token di binding del canale del servizio WinRM è impostato su strict, modificare il valore specificando relaxed.
    c:\> winrm set winrm/config/service/auth @{CbtHardeningLevel="relaxed"}
  6. Abilitare l'autenticazione di base nel client WinRM.
    1. Eseguire il comando seguente per verificare se l'autenticazione di base è consentita.
      c:\> winrm get winrm/config/client
    2. Eseguire il comando seguente per abilitare l'autenticazione di base.
      c:\> winrm set winrm/config/client/auth @{Basic="true"}
  7. Eseguire il comando seguente per consentire il trasferimento dei dati non crittografati al client WinRM.
    c:\> winrm set winrm/config/client @{AllowUnencrypted="true"}
  8. Se la macchina host di WinRM si trova in un dominio esterno, eseguire il comando seguente per specificare gli host attendibili.
    c:\> winrm set winrm/config/client @{TrustedHosts="host1, host2, host3"}
  9. Eseguire il comando seguente per provare la connessione al servizio WinRM.
    c:\> winrm identify -r:http://winrm_server:5985 -auth:basic -u:user_name -p:password -encoding:utf-8