Использование зашифрованного пароля Ansible в скрипте Python

#python #ansible

#python #ansible

Вопрос:

Я использую Ansible для запуска скрипта python с параметрами. Одним из этих параметров является пароль пользователя

 script: "{{ path_to_setup_py }} --username {{ username }} --password {{ password }} --ip {{ ip }} --hostname {{ hostname }}"
 

Это позволяет извлекать все, кроме пароля, пароль — это пользовательский ввод, который затем шифруется.

 name: password
prompt: Enter your password
private: yes
encrypt: sha512_crypt
confirm: yes
salt_size: 7
 

При запуске скрипта python пароль отображается как хэш-значение и не использует фактический пароль. Как мне заставить это расшифровать хэш, а затем запустить его в скрипте?

Буду признателен за любую помощь, я новичок.

Ответ №1:

Как говорится в прекрасном руководстве, использование encrypt: — это действительно специализация, когда вы собираетесь просто отправить это значение в user: модуль, а не взаимодействовать с ним дальше.

Если вы просто хотите, чтобы пароль не отображался на экране, это то, что private: yes контролирует

Короче говоря, если у вас нет требования, которое вы не раскрыли в своем вопросе, решение состоит в том, чтобы просто удалить параметры encrypt: and salt_size: :

   name: password
  prompt: Enter your password
  private: yes
  confirm: yes