# winrm – Run tasks over Microsoft’s WinRM

- Synopsis
- Requirements
- Parameters
- Status

## 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 integer |  | 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 string | Default: "kinit" | var: ansible_winrm_kinit_cmd | kerberos command to use to request a authentication ticket

kerberos_mode
string

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 string | 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 string | Default: "inventory_hostname" | var: ansible_host var: ansible_winrm_host | Address of the windows machine
remote_password string |  | var: ansible_password var: ansible_winrm_pass var: ansible_winrm_password | Authentication password for the `remote_user`. Can be supplied as CLI option. aliases: password
remote_user string |  | var: ansible_user var: ansible_winrm_user | The user to log in as to the Windows machine

scheme
string

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

- This connection is not guaranteed to have a backwards compatible interface. [preview]
- This connection is maintained by the Ansible Community. [community]

### Authors

- Ansible Core Team

Hint

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

Hint

Configuration entries for each entry type have a low to high priority order. For example, a variable that is lower in the list will override a variable that is higher up.