Ansible аутентификация на Windows - PullRequest
0 голосов
/ 25 марта 2020

Я использую Jenkins для запуска ansible playbook на windows host. Я пытаюсь выполнить очень простую команду, например robocopy, между общим ресурсом NAS и локальным каталогом на windows. Проблема в том, что я все время получаю ACCESS DENIED(5). Это не так, потому что у пользователя (domain\sysansible), на котором я работаю ansible, уже есть полные права. Нет проблем, когда я запускаю ту же команду на windows или на любом компьютере. Я заметил, что когда Дженкинс запускает ansible playbook, он распознается не как domain\sysansible, а как член локальной группы администраторов windows_host\administrator, которая не имеет права на общий доступ к NAS (и они не могут иметь, потому что только учетные записи домена утверждены).

Мой файл инвентаризации выглядит следующим образом:

[application_host]
lizard ansible_host=windows_host.domain.companynet.net ansible_connection=winrm ansible_winrm_transport=kerberos ansible_user=sysansible@company.com ansible_password=***** ansible_port=5986 ansible_winrm_server_cert_validation=ignore

Моя ansible задача довольно проста. Это работает, когда я обменял источник на локальный каталог вместо \\nas-share\applications\app-home. Я также использовал некоторые варианты вариации параметров робокопии, но они также потерпели неудачу.

- name: Sync the contents of home directory to backup site, including subdirectories
  win_command: robocopy \\nas-share\applications\app-home d:\application\backup\home-folder /E /w:5 /r:2 /log:D:\Applications\log.txt /XD \\nas-share\applications\app-home\artifacts
    register: info_robocopy
  tags:
    - robo

Проблема для меня заключается в том, почему меня признают группой локальных учетных записей администратора? Как распознать на windows как domain\sysansible?

...