winrm – Run tasks over Microsoft’s WinRM

New in version 2.0.

Synopsis

  • Run commands or put/fetch on a target via WinRM
  • This plugin allows extra arguments to be passed that are supported by the protocol but not explicitly defined here. They should take the form of variables declared with the following pattern ansible_winrm_<option>.

Requirements

The below requirements are needed on the local master node that executes this connection.

  • pywinrm (python library)

Parameters

Parameter Choices/Defaults Configuration Comments
connection_timeout
-
var: ansible_winrm_connection_timeout
Sets the operation and read timeout settings for the WinRM connection.
Corresponds to the operation_timeout_sec and read_timeout_sec args in pywinrm so avoid setting these vars with this one.
The default value is whatever is set in the installed version of pywinrm.
kerberos_command
-
Default:
"kinit"
var: ansible_winrm_kinit_cmd
kerberos command to use to request a authentication ticket
kerberos_mode
-
    Choices:
  • managed
  • manual
var: ansible_winrm_kinit_mode
kerberos usage mode.
The managed option means Ansible will obtain kerberos ticket.
While the manual one means a ticket must already have been obtained by the user.
If having issues with Ansible freezing when trying to obtain the Kerberos ticket, you can either set this to manual and obtain it outside Ansible or install pexpect through pip and try again.
path
-
Default:
"/wsman"
var: ansible_winrm_path
URI path to connect to
port
integer
Default:
5986
var: ansible_port
var: ansible_winrm_port
port for winrm to connect on remote target
The default is the https (5986) port, if using http it should be 5985
remote_addr
-
Default:
"inventory_hostname"
var: ansible_host
var: ansible_winrm_host
Address of the windows machine
remote_user
-
var: ansible_user
var: ansible_winrm_user
The user to log in as to the Windows machine
scheme
-
    Choices:
  • http
  • https
var: ansible_winrm_scheme
URI scheme to use
If not set, then will default to https or http if port is 5985.
transport
list
var: ansible_winrm_transport
List of winrm transports to attempt to to use (ssl, plaintext, kerberos, etc)
If None (the default) the plugin will try to automatically guess the correct list
The choices avialable depend on your version of pywinrm

Status

Authors

  • Ansible Core Team

Hint

If you notice any issues in this documentation you can edit this document to improve it.