#### SUMMARY
PSRP connection plugin does not respect the JEA configuration parameters when running put_file(). It instead creates a new shell which does not support ansible_psrp_configuration_name parameter. This results in access denied errors when using modules such as win_template which rely on put_file() 

see: https://github.com/ansible/ansible/blob/6adf0c581ee005f514ea68e80c0f91e97e63dcea/lib/ansible/plugins/connection/psrp.py#L448


##### ISSUE TYPE
- Bug Report

##### COMPONENT NAME
plugins/connection/psrp.py

##### ANSIBLE VERSION
```plain
ansible 2.8.1
  config file = /root/ansible-windows/ansible.cfg
  configured module search path = [u'/root/ansible-windows/shared/library', u'/root/ansible-windows/library']
  ansible python module location = /usr/local/lib/python2.7/site-packages/ansible
  executable location = /usr/local/bin/ansible
  python version = 2.7.16 (default, Jun 11 2019, 02:02:48) [GCC 6.3.0 20170516]
```

##### CONFIGURATION
```plain
DEFAULT_CALLBACK_PLUGIN_PATH(/root/ansible-windows/ansible.cfg) = [u'/root/ansible-windows/plugins/callback']
DEFAULT_MANAGED_STR(/root/ansible-windows/ansible.cfg) = This file is managed by Ansible.%n
template: {file}
date: %Y-%m-%d %H:%M:%S
user: {uid}
host: {host}
DEFAULT_MODULE_PATH(/root/ansible-windows/ansible.cfg) = [u'/root/ansible-windows/shared/library', u'/root/ansible-windows/library']
DEFAULT_ROLES_PATH(/root/ansible-windows/ansible.cfg) = [u'/root/ansible-windows/shared/roles', u'/root/ansible-windows/roles']
DEFAULT_STDOUT_CALLBACK(/root/ansible-windows/ansible.cfg) = default
RETRY_FILES_ENABLED(/root/ansible-windows/ansible.cfg) = False
```

##### OS / ENVIRONMENT
Target OS: Windows Server 2016 Standard


##### STEPS TO REPRODUCE
This is a bit more involved as it requires a Windows machine with JEA configured but for illustration:

```yml
---

- hosts: all
  gather_facts: no
  vars:
    ansible_user: "{{ jea_username }}"
    ansible_password: "{{ jea_password }}"
    ansible_connection: psrp
    ansible_psrp_configuration_name: JEA-ConfMgmt
    ansible_psrp_auth: ntlm
    ansible_psrp_cert_validation: ignore
    ansible_psrp_protocol: https


  tasks:
    - win_template:
        src: myScript.ps1
        dest: "C:/build/myScript.ps1"
```

##### EXPECTED RESULTS
win_template should be able to transfer files to a windows target machine when running with a JEA configuration


##### ACTUAL RESULTS
module fails with access denied. 

```plain
The full traceback is:
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/site-packages/ansible/executor/task_executor.py", line 144, in run
    res = self._execute()
  File "/usr/local/lib/python2.7/site-packages/ansible/executor/task_executor.py", line 648, in _execute
    result = self._handler.run(task_vars=variables)
  File "/usr/local/lib/python2.7/site-packages/ansible/plugins/action/template.py", line 189, in run
    result.update(copy_action.run(task_vars=task_vars))
  File "/usr/local/lib/python2.7/site-packages/ansible/plugins/action/copy.py", line 517, in run
    module_return = self._copy_file(source_full, source_rel, content, content_tempfile, dest, task_vars, follow)
  File "/usr/local/lib/python2.7/site-packages/ansible/plugins/action/copy.py", line 300, in _copy_file
    remote_path = self._transfer_file(source_full, tmp_src)
  File "/usr/local/lib/python2.7/site-packages/ansible/plugins/action/__init__.py", line 424, in _transfer_file
    self._connection.put_file(local_path, remote_path)
  File "/usr/local/lib/python2.7/site-packages/ansible/plugins/connection/psrp.py", line 452, in put_file
    with WinRS(self.runspace.connection, codepage=65001) as shell:
  File "/usr/local/lib/python2.7/site-packages/pypsrp/shell.py", line 98, in __enter__
    self.open()
  File "/usr/local/lib/python2.7/site-packages/pypsrp/shell.py", line 204, in open
    option_set=options)
  File "/usr/local/lib/python2.7/site-packages/pypsrp/wsman.py", line 259, in create
    option_set, selector_set, timeout)
  File "/usr/local/lib/python2.7/site-packages/pypsrp/wsman.py", line 382, in invoke
    raise self._parse_wsman_fault(err.response_text)
WSManFaultError: Received a WSManFault message. (Code: 5, Machine: cevoktaagent6.c3.zone, Reason: Access is denied.)
```

$algo.TransformBlock($bytes, 0, $bytes.Length, $bytes, 0) > $null
    $fd.Write($bytes, 0, $bytes.Length)
} end {
    $fd.Close()
    $algo.TransformFinalBlock($bytes, 0, 0) > $null
    $hash = [System.BitConverter]::ToString($algo.Hash)
    $hash = $hash.Replace("-", "").ToLowerInvariant()
    Write-Output -InputObject "{`"sha1`":`"$hash`"}"
}''' % self._shell._escape(out_path)
        cmd_parts = self._shell._encode_script(script, as_list=True,
                                               strict_mode=False,
                                               preserve_rc=False)
        b_in_path = to_bytes(in_path, errors='surrogate_or_strict')
        if not os.path.exists(b_in_path):
            raise AnsibleFileNotFound('file or module does not exist: "%s"'
                                      % to_native(in_path))
        in_size = os.path.getsize(b_in_path)
        buffer_size = int(self.runspace.connection.max_payload_size / 4 * 3)
        
        
        
        with WinRS(self.runspace.connection, codepage=65001) as shell:
            process = Process(shell, cmd_parts[0], cmd_parts[1:])
            process.begin_invoke()
            offset = 0
            with open(b_in_path, 'rb') as src_file:
                for data in iter((lambda: src_file.read(buffer_size)), b""):
                    offset += len(data)
                    display.vvvvv("PSRP PUT %s to %s (offset=%d, size=%d" %
                                  (in_path, out_path, offset, len(data)),