blob: 55d232568afe2cece66e13eab996b6784b6896c4 [file] [log] [blame]
:py:mod:`airflow.providers.microsoft.winrm.hooks.winrm`
=======================================================
.. py:module:: airflow.providers.microsoft.winrm.hooks.winrm
.. autoapi-nested-parse::
Hook for winrm remote execution.
Module Contents
---------------
Classes
~~~~~~~
.. autoapisummary::
airflow.providers.microsoft.winrm.hooks.winrm.WinRMHook
.. py:class:: WinRMHook(ssh_conn_id = None, endpoint = None, remote_host = None, remote_port = 5985, transport = 'plaintext', username = None, password = None, service = 'HTTP', keytab = None, ca_trust_path = None, cert_pem = None, cert_key_pem = None, server_cert_validation = 'validate', kerberos_delegation = False, read_timeout_sec = 30, operation_timeout_sec = 20, kerberos_hostname_override = None, message_encryption = 'auto', credssp_disable_tlsv1_2 = False, send_cbt = True)
Bases: :py:obj:`airflow.hooks.base.BaseHook`
Hook for winrm remote execution using pywinrm.
:seealso: https://github.com/diyan/pywinrm/blob/master/winrm/protocol.py
:param ssh_conn_id: connection id from airflow Connections from where
all the required parameters can be fetched like username and password.
Thought the priority is given to the param passed during init
:param endpoint: When not set, endpoint will be constructed like this:
'http://{remote_host}:{remote_port}/wsman'
:param remote_host: Remote host to connect to. Ignored if `endpoint` is set.
:param remote_port: Remote port to connect to. Ignored if `endpoint` is set.
:param transport: transport type, one of 'plaintext' (default), 'kerberos', 'ssl', 'ntlm', 'credssp'
:param username: username to connect to the remote_host
:param password: password of the username to connect to the remote_host
:param service: the service name, default is HTTP
:param keytab: the path to a keytab file if you are using one
:param ca_trust_path: Certification Authority trust path
:param cert_pem: client authentication certificate file path in PEM format
:param cert_key_pem: client authentication certificate key file path in PEM format
:param server_cert_validation: whether server certificate should be validated on
Python versions that support it; one of 'validate' (default), 'ignore'
:param kerberos_delegation: if True, TGT is sent to target server to
allow multiple hops
:param read_timeout_sec: maximum seconds to wait before an HTTP connect/read times out (default 30).
This value should be slightly higher than operation_timeout_sec,
as the server can block *at least* that long.
:param operation_timeout_sec: maximum allowed time in seconds for any single wsman
HTTP operation (default 20). Note that operation timeouts while receiving output
(the only wsman operation that should take any significant time,
and where these timeouts are expected) will be silently retried indefinitely.
:param kerberos_hostname_override: the hostname to use for the kerberos exchange
(defaults to the hostname in the endpoint URL)
:param message_encryption: Will encrypt the WinRM messages if set
and the transport auth supports message encryption. (Default 'auto')
:param credssp_disable_tlsv1_2: Whether to disable TLSv1.2 support and work with older
protocols like TLSv1.0, default is False
:param send_cbt: Will send the channel bindings over a HTTPS channel (Default: True)
.. py:method:: get_conn(self)
Returns connection for the hook.